大一C语言题目求解

下面程序的运行结果是____。
#include <stdio.h>
#define LEN 4
main( )
{
int j, c;
static char n[2][LEN+1]={“8980”, “9198”};
for(j=LEN-1;j>=0;j--)
{
c=n[0][j]+n[1][j]-2*’0’;
n[0][j]=c%10+’0’;
}
for(j=0;j<=1;j++) puts(n[j]);
}

c=n[0][j]+n[1][j]-2*’0’;——把对应字符相加变成了数字相加,如第一次是'0'+'8'-2*'0'结果就是数字0+8==8。第二次得到'8'+'9'-2*'0'==17,相应地第三次是10,最后一次是17。后面n[0][j]=c%10+’0’;又相应地把第一次的得数8+了'0'变成了字符'8'并存储到n[0]的最后一位,并且如果结果大于等于10时只取个位(由c%10实现);所以第二次得到的是'7',第三次得到的是'0',最后得到的是'7'。所以最后输出是7078和9198。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-12-11
"); else if(workTime<=160) return 5*workTime; else return 5*160+(workTime-160)*9;}int main(){ int workTime; printf("请输入一个月的工作小时数:"); scanf("%d",&workTime); printf("该工人一个月的工资为:%d
第2个回答  2018-12-11
我也在复习
第3个回答  2018-12-11
#include<stdio.h>

int salary(int workTime){ if(workTime<0) printf("工作时间不能为负数!\n"); else if(workTime<=160) return 5*workTime; else return 5*160+(workTime-160)*9;}int main(){ int workTime; printf("请输入一个月的工作小时数:"); scanf("%d",&workTime); printf("该工人一个月的工资为:%d\n",salary(workTime)); return 0;}

double fun(double x,double y){ double z=x*x-y*y; if(z>=0) return z; else return -z;}

#include<stdio.h>int main(){ float score[10]; float min,max; float sum=0; printf("请输入10个学生的成绩:"); for(int i=0;i<10;i++) { scanf("%f",&score[i]); if(i==0) min=max=score[i]; if(score[i]>max) max=score[i]; if(score[i]<min) min=score[i]; sum+=score[i]; } printf("10个学生的成绩中最高分为%f\t最低分为%f\t平均分为%f\n",max,min,sum/10); return 0; }

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网