这看完了c语言的前五章,从昨天到今天一直在练习写程序,从资料中的例子到课后的习题,都是些很简单的程序,但是书写中经常会犯一些小错误,有时候是标点导致的,有时候是输入法导致的。总的来说就是一定要细心。做的最后一个习题是 '要求用户输入两个整数和一个运算符,程序能够计算出两个数的运算结果"。自己什么都写出来了还是挺爽的。
#include <stdio.h>
int add(int x,int y)
{
return x+y;
}
int sub(int x,int y)
{
return x-y;
}
int multi(int x,int y)
{
return x*y;
}
int divi(int x,int y)
{
return x/y;
}
int main()
{
int num1,num2;
char o;
while(1)
{
printf("请两个整数和运算符:");
scanf("%d%d%c",&num1,&num2,&o);
switch(o)
{
case '+': printf("%d%c%d=%d\n",num1,o,num2,add(num1,num2));break;
case '-': printf("%d%c%d=%d\n",num1,o,num2,sub(num1,num2));break;
case '*': printf("%d%c%d=%d\n",num1,o,num2,multi(num1,num2));break;
case '/': printf("%d%c%d=%d\n",num1,o,num2,divi(num1,num2));break;
default: printf("运算符错误\n");
}
}
return 0;
}
写出来之后看了下答案,发现可以用fflush(stdin)处理输入缓存。
中间的一段这么写程序输出的结果,更够让人明白
printf("请输入两个整数:");
scanf("%d%d",&num1,&num2);
fflush(stdin);
printf("请输入运算符:");
scanf("%c",&o);
马上准备进入第二阶段的学习了,让每天都充实起来。
浙公网安备 33010602011771号