A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

wudiyule

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© wudiyule 初级黑马   /  2014-11-27 21:45  /  948 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我想设计一个 输入成绩 绩点 然后计算出 成绩 绩点 的乘积, 最后求出所以成绩与绩点的乘积相加的合。

这是我设计的 一个垃圾 程序....#include <stdio.h>

int main ()

{
    int n = 0 ;
   
    printf("请输入你要计算的科目总数\n") ;
   
    scanf("%d",&n) ;
   
    int ages[100] ;
   
    int scours[100] ;
   
   
    for (int i = 0 ; i < n ; i++) {
        
        for (int a  = 0 ; a < i   ; a++) {
            
            
            printf ("请输入第%d科目成绩", a+1) ;
            
            scanf ("%d",&ages[ a  ]) ;
        }
        
        for (int b = 0 ; b < i ; b++) {
            
            printf ("请输入第%d科目绩点",b+1) ;
            
            scanf("%d",&scours[b ]) ;
        }
        
        int sum= 0 ;
        
        sum = sum + (ages[ i  ] * scours[ i  ]) ;
            
        printf ("%d\n", sum) ;
   
        
    }
    return 0 ;
}

现在问题在于 我每次的运行 里面的子for循环还会再一次定义 int a = 0   和 int b= 0  从而运行的结果是这个样子

请输入你要计算的科目总数

请输入第1科目成绩

请输入第2科目绩点

请输入第1科目成绩

请输入第2科目成绩

请输入第1科目绩点

请输入第2科目绩点

2 个回复

倒序浏览
这样的行吗
  1. #include <stdio.h>

  2. int main ()

  3. {
  4.     int n = 0 ;
  5.    
  6.     printf("请输入你要计算的科目总数:\n");
  7.    
  8.     scanf("%d", &n);
  9.    
  10.     int ages[10];
  11.    
  12.     int scours[10];
  13.    
  14.     int sum = 0;
  15.    
  16.     for (int i = 0; i < n; i++) {
  17.         
  18.         printf ("请输入第%d科目成绩:\n", i + 1);
  19.         
  20.         scanf ("%d", &ages[i]);
  21.         
  22.         printf ("请输入第%d科目绩点:\n", i + 1);
  23.         
  24.         scanf("%d", &scours[i]);
  25.         
  26.         sum += ages[i] * scours[i];
  27.     }
  28.    
  29.     printf ("%d\n", sum) ;
  30.    
  31.     return 0 ;
  32. }
复制代码
回复 使用道具 举报
什么叫绩点?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马