作业3 应用分支与循环结构解决问题。
1、
#include<stdio.h> int main(void) { int x,y; printf("Enter x:"); scanf("%d",&x); if(x<0) { y=-1; } else if(x==0) { y=0; } else { y=1; } printf("y=%d\n",y); return 0; }
2、
#include<stdio.h> int main (void) { int count,i,n; double grade,total; printf("Enter n:"); scanf("%d",&n); total=0; count=0; for(i=1;i<=n;i++){ printf("Enter grade%d:",i); scanf("%lf",&grade); total=total+grade; if(grade>=60) { count++; } } printf("Grade average=%.2f\n",total/n); printf("Number of pass=%d\n",count); return 0; }
最后两项分行竟然是在上一项的输出末尾加\n,真是神奇的设定
3、
#include<stdio.h> int main(void) { int blank,digit,other,letter; char ch; int i; blank=digit=other=letter=0; printf("Enter :"); for(i=1;i<=15;i++) { ch=getchar( ); if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z')) letter++; else if(ch>='0'&&ch<='9') digit++; else if(ch>=' '&&ch<=' ') blank++; else other++; } printf("blank=%d,digit=%d,letter=%d,other=%d\n",blank,digit,letter,other); return 0; }
肿么控制输入字符数啊?这个程序运行以后貌似可以无限输入字符,但是结果只计算了前15个的
4、
#include<stdio.h> int main(void) { int i,n,year; printf("Enter n:"); scanf("%d",&n); for(i=1;i<=n;i++) { printf("Enter year:"); scanf("%d",&year); if((year%4==0&&year%100!=0)||(year%400==0)) { printf("这是闰年\n"); } else{ printf("这不是闰年\n"); } } return 0; }
输入-1后退出程序这一步骤为什么不能用
if(year==-1)
break;
于是我默默地省略这一程序了QAQ
5、
#include<stdio.h> int main(void) { char op; printf("输入五级制成绩:"); scanf("%c",&op); switch(op){ case'A':printf("grade=90-100"); break; case'B':printf("grade=80-89"); break; case'C':printf("grade=70-79"); break; case'D':printf("grade=60-69"); break; case'E':printf("grade=0-59"); break; } return 0; }
突然发现\n在这里好像没什么用 - - !
6、
#include<stdio.h> int main(void) { int i,x; double price; for(i=1;i<=5;i++) { printf("[1]apples\n"); printf("[2]pears\n"); printf("[3]oranges\n"); printf("[4]grapes\n"); printf("[0]exit\n"); printf("输入编号:"); scanf("%d",&x); if(x==0) break; switch(x) { case 1:price=3.00; break; case 2:price=2.50; break; case 3:price=4.10; break; case 4:price=10.20; break; default:price=0.00; break; } printf("price=%.2f",price); } return 0; }
为什么不能直接只输出价格不带后面的菜单?