问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言基础的几个难点解析

发布网友 发布时间:2022-04-22 17:36

我来回答

1个回答

热心网友 时间:2022-07-12 10:03

一、整型数据的范围
不同类型的数据在内存中占用的存储单元长度不同,以VC++6.0的编译环境为例,基本整型(int)数据分配4个字节,短整型(short int)数据分配2个字节。我们以short int为例。1个字节为8个二进制位,每个短整型数据分配2个字节,即16位。对于有符号位的短整型(signed short int,默认的),最左面一位作为符号位,0表示正,1表示负。即能存储的最大数为0111111111111111,第一位是0,表示正数,后边15位都是1,转换为十进制为32767;最小数为1000000000000000,转换为十进制为-32768。超出此范围,即为“溢出”。例如:
short int a,b,c,d; a=32767;b=a+1; c=-32768;d=b-1;
printf("b=%d\t",b); printf("d=%d\n",d); 输出结果为b=-32768 d=32767
对于无符号的短整型(unsigned short int),最小为0000000000000000,最大为1111111111111111,范围0~65535。例如:
unsigned short int e=65535,f; f=e+1;
printf("f=%d\n",f); 输出结果为f=0
二、运算符
算术运算符有+,-,*,/,%,++,--。其中,*号在表达式中不可以省略,如b2-4ac,写成表达式为b*b-4*a*c。/和%要区分好,/为商,%为余。如a可以被b整除,表示为a%b==0。++,--的使用方法有两种:一种i++,i--,先使用i原值,再使i的值加或减1;第二种++i,--i,先使i的值加或减1,再使用i的新值。例如:
int i=11; printf("%d\n",i++ * 1/3); 输出结果为3。
int i=11; printf("%d\n",++i * 1/3); 输出结果为4。
自加自减运算符在后边的学习中会经常用到,要好好理解。
逻辑运算符有&&,||,!。在逻辑表达式中,不是所有的逻辑运算符都执行,只在必须执行下一个逻辑运算符才能求出表达式的解的时候,才执行该运算符。a && b只有a为真时,才判断b的值。换句话说,a如果为假,b就不执行。同理,a || b,a如果为真,b就不用执行。例如:
int m=1,n=1,a=1,b=1;
printf(“表达式=%d\t”,(m=a>b)&&(n=a>b)); printf("m=%d,n=%d\n",m,n);
输出结果为 表达式=0 m=0,n=1
常用的运算符的优先级别从高到低排序为:!,算术运算符(++,--高于*,/,%高于+,-),关系运算符(>,>=,<,<=高于==,!=),&&,||,赋值运算符,逗号运算符。
三、比较数的大小
例如:编写程序,输出三个整数的最大值。刚接触C语言的学生,大部分学生上机实践都可以完成这个程序,但是思路不太好。调整算法思路,便于以后程序的编写。
main( )
{ int a,b,c,max; max=a;
if(b>max) max=b; if(c>max) max=c; printf("max=%d\n",max);}
同理,编写程序,输出10个整数的最大值。
main( )
{ int a[10],max,i; for(i=0;i<=9;i++) scanf("%d",&a[i]);
max=a[0]; for(i=1;i<=9;i++) if(a[i]>max) max=a[i];
printf("max=%d",max); }
四、switch语句
处理选择结构有if语句和switch语句。switch语句用于处理多分支选择结构,在使用时有多个注意点,这里强调两点。
1.case后边的常量,不能写成表达式。
例如:编写程序,评判学生成绩score的等级grade,90~100为A,80~90为B,70~80为C,60~70为D,60以下为E。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 名师1+1导读方案:汤姆·索亚历险记目录 三星sm-g7200打开微信慢,无法正常收看,网速不慢。 笔记本电脑如何调亮屏幕亮度 大伙说说洗衣机要不要带烘干好 热烘干洗衣机怎么样 ef英语哪个好 c语言基础! 油条的做法和配料 油条的做法和配方些 油条的制作和配方 油条的配料及做法有哪些? 商业油条的做法步骤和配方 香蕉热量高吗?可以减肥吗? 香蕉到底是高热量的水果,还是低热量的呢? 香蕉到底是清火还是上火的? 广西话说香蕉是怎么说的 香蕉是果实吗 ?是如何繁殖的? 香蕉的韩语怎么说及发音 关于香蕉的传说 一串香蕉还是一把香蕉? 香蕉的英文叫? 你们说香蕉是读“一个.还是.一根”?? 香蕉的英语怎么说? 香蕉的英语怎么写 香蕉是什么意思 农行银行卡不存款进去,很久不用会冻结或者销户吗,会有啥影响吗 C语言基础简介 淘宝蚂蚁微贷怎么还款 蚂蚁微贷在哪里还款 支付宝的蚂蚁微贷的还款流程是怎样的? 淘宝网蚂蚁微贷在哪里还款,连个入口都没找到 既然是微贷,贷款有付利息吗?还款是不是要多扣费? 中兴微贷8年没有还了 微贷网立案调查了,我们出借人还款怎么还了? 支付宝上面没有花呗也没有蚂蚁微贷怎么还款 蚂蚁微贷4000每个月还款多少? 404 Not Found 哪里能可以查到微贷产品逾期了?怎么还。 微贷网为什么不通过自己的平台还款 微贷网贷款还不上怎么办 泉州银行个人微贷还款有宽容期吗? 微贷多米贷可以减免利息,只还本金吗 404 Not Found cdr怎么制作出金色闪闪发光字体? CDR制作发光字教程 在平面设计中,CorelDRAW的发光字怎么做?