第1个回答 2011-03-09
#include <stdio.h>
main()
{int c;
while((c=getchar())!='\n')//判断输入的字符是否是回车,也就是是否是输入结束。如果不是就执行
{switch (c-'2')//将c所指的字符的ascii码减去2所对应的ascii码作为表达式。
{case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break;
case 3:putchar(c+3);
default :putchar(c+2);break;
}
}printf("\n");
其它的应该都懂吧?
}
第2个回答 2011-03-09
这个很简单,就是让你输入一个整型数 c。然后执行switch选择程序。注意case 0 和case 1 ,case
3都没break,也就是如果满足条件执行到这里,还会执行后面的。就是这样的,还有哪不清楚吗?
第3个回答 2011-03-09
#表示预处理
#include "stdio.h"
#include "math.h"
main()
{
double x,s;
printf("input number:\n");
scanf("%lf",&x);
s=sin(x);
printf("sine of %lf is %lf\n",x,s);
}
预处理命令还有其它几种,这里的include 称为文件包含命令,其意义是把尖括号""或引号<>内指定的文件包含到本程序来,成为本程序的一部分。被包含的文件通常是由系统提供的,其扩展名为.h。因此也称为头文件或首部文件。C语言的头文件中包括了各个标准库函数的函数原型。因此,凡是在程序中调用一个库函数时,都必须包含该函数原型所在的头文件。在本例中,使用了三个库函数:输入函数scanf,正弦函数sin,输出函数printf。sin函数是数学函数,其头文件为math.h文件,因此在程序的主函数前用include命令包含了math.h。scanf和printf是标准输入输出函数,其头文件为stdio.h,在主函数前也用include命令包含了stdio.h文件。
第4个回答 2011-03-09
哥们,你的程序是有输入字符的程序,当输入字符后,才能解释该程序内涵
第5个回答 2011-03-09
getchar()是从标准输入(对电脑来说是键盘)中读取字符,并把getchar得到的值赋值给c
然后c判断是否等于“\n”即是否是回车,
如果是回车:则不进入循环直接执行printf("\n");
如果不是回车,则进入循环,接着就是switch的事了
首先运行c-"2",这个意思是因为getchar输入进来的是以字符串的形式进来的,用c所代表的ASCII减去
字符“2”所代表的ASCII码,所得到的就是num=(c所代表的实际数字c-数字2)所得的值
根据算出来的值,来判断执行哪个case,比如num=1,则执行case 1:putchar(c+4);,即输出c的ASCII码+4所代表的数字。
如果算出来的没有对应case(),则执行default :putchar(c+2);break;
呼呼~~写的我累,最后说下你这个代码有问题,每个case语句应该都加break,不然像你写的case1执行完就直接执行case2了,应该不符合你的预期吧。。。