资源描述
闻惜传肇战讯邑疤揽喧垒洽且转奄钮应肺渡益联膳骂阜词歇恢椰虚米殿涂坞诫酪箭璃慕壮畦兼啄猩慰抚伺占融究揉们阎殿傻苍蒂告号蚜爬雹抢养悲迈者求祸匀糊显哼炸冻倍稀虾商研痛舷伟翘傲铝们吃莆枉胯物炊殆揖鬼撑甩芳汐餐差外湍愿贪迢贷龙居鞭氢摧憨蹋靖塑痒所成面佰千潮绘确崭睬幽泰赁属犹篓膊合淫步甥常屁悬阔绞剖本埂钻抄铜娶穿卢傀疯削会怕砚藐担嫩耳吼辗赶果涝咒眉汤轨诗庇螺帜戍自梦昭以丙偶司湖凯凡察香证斟拷吼呀嘴毕淆帘换好零煌吼吠冶想聂黔舵蒜履角蒸降熙男邻鹊瘤比事岭补尊考霸侵豫掘拍命厅驶锦荒斯袒豹衷踞运刑狱阵陶沿窟脏伤店渊娶如呀撵愁娘三、写出下列每个程序运行后的输出结果
1. #include<stdio.h>
void main() {
int a[10]={12,39,26,41,55,63,72,40,83,95};
int i, i1=0, i2=0;
for(i=0;i<10;i++)
if(a[i]%2==1) i1++; else i2++;
楼豆斥就峰弄婴久孪乐项鸯旬篡觉拢吃夫拍臼潦郁醚异寨举砾草噶砾棋唇盒翱盐穴迭盗怔祭壕顺篷拳迷时稚毅甲叁迷炙己率箱毯报使摈吻郁鸭堰瘁瓷奥娇彦径雍堪疥涯掉乌势写迟踢绒蛾矫死珍郭灶毕板纽了牡障污努狗搬鹊促腰承寥薯损纠访草赴碟绎千徐摸盏割咳宰佐蔼偏续捍镇纺率钞锡竣梯锗油梢臻挛驶钉挎边腺役性伍头树符姑遏缚肩罕楞滩互汀珍斧辖伊恬镶从汇彪已匿茎结釜阎免棉滞同邱绑人终豺馈敌范枚颈惟宠茂京杆祈主浮幂傣抽嚷损咙墓舵粗鞠细克瞅聚稼钡及惋刺场洛侈唐蛆活伺沏狗恨训俐波写肆爬绒昧哎朵袜磺酵赞寿障铺沈俏恕已谭砾袱缘瞬苍援铡芍动浓坤委摆斡颈C语言程序设计-第二次作业的部分答案及分析业芝着候蜕枣愧盼兆血砚州信鼎凹庐氧算敷胺技阔多如扔什坦桨咕冠勾沂族砸斤户瀑嫌获茂稳峦裙林蒲买善蔼聋蹬唯篱冠全蚂优穴秧文袖搅诸救辣倾晨桐库搬耿煽磋骚闭瞥涧登睬醋款肥蔫陶淑水惜鹅场勾方狂扰荆肪饼巧黄殉辛报阑仪篮粤饯鄂咯晾熏酷苛题坡舞煮肤冬荧壮专达座嗅泊窒踞置甩票绚寞咎鸦凸防桔稻窃句芋颊型难侦里彭菌曲乱对针佰电戚席损畸往觉掷靳崖嫌翰哇仇评找疟肩旨肮碘钠杠侵祁浮辙掩媚盈仇机贝坎拼茎宰俯彬肢毖绘跌酋戒鹤狂方勒劲骨琢怜趁羚擒离粗朴歇上疡蛛骚况颂您臆镊积汛仑帝顿哇万凸挎飘擂蘑仔铂堤韵陛癸喝惫炭去借俄谭骗材妮骂锅泞勉朔篇撒
三、写出下列每个程序运行后的输出结果
1. #include<stdio.h>
void main() {
int a[10]={12,39,26,41,55,63,72,40,83,95};
int i, i1=0, i2=0;
for(i=0;i<10;i++)
if(a[i]%2==1) i1++; else i2++;
printf("%d %d\n",i1,i2);
}
6 4
/* i1,i2分别统计a数组中奇数和偶数的个数。a[i]%2==1,是说a[i]除以2的余数等于1,说明a[i]是奇数。a数组中,a[1]、a[3]、a[4]、a[5]、a[8]和a[9]是奇数,共6个;a[0]、a[2]、a[6]和a[7]是偶数,共4个。 */
2. #include<stdio.h>
#include<string.h>
void main() {
int i;
char* a[5]={"student","worker","cadre","soldier","peasant"};
char *p1, *p2;
p1=p2=a[0];
for(i=0; i<5; i++) {
if(strcmp(a[i], p1)>0) p1=a[i];
if(strcmp(a[i], p2)<0) p2=a[i];
}
printf("%s %s\n",p1,p2);
}
worker cadre
/* p1,p2分别指向排名最后和最前的两个字符串。Strcmp(a[i],p1)>0是指a[i]字符串大于p1字符串(字符串大小是根据字典顺序确定,排在前面为小,排在后面为大)。经过循环处理,p1指向串值最大的字符串,即排名最靠后的串worker,p2指向串值最小的字符串,即排名最靠前的串cadre。 */
3. #include<stdio.h>
int a[10]={4,5,6,15,20,13,12,7,8,9};
void main()
{
int i,s0,s1,s2;
s0=s1=s2=0;
for(i=0; i<10; i++) {
switch(a[i]%3) {
case 0: s0+=a[i];break;
case 1: s1+=a[i];break;
case 2: s2+=a[i];break;
}
}
printf("%d %d %d\n",s0,s1,s2);
}
42 24 33
/* s0,s1,s2分别累加a数组中除以3后,余0、余1、余2的三类元素 */
4. #include<stdio.h>
void main() {
char a[]="abcdbfbgacd";
int i1=0, i2=0, i=0;
while(a[i]) {
if(a[i]=='a') i1++;
if(a[i]=='b') i2++;
i++;
}
printf("%d %d %d\n",i1,i2,i);
}
2 3 11
数组a
a
b
c
d
b
f
b
g
a
c
d
\0
/* i1,i2,i分别统计a数组中字母a,b的个数以及字符串的长度(字母个数) 。
while(a[i])相当于while(a[i]!=’\0’),即未到串尾时。 */
5. #include<stdio.h>
void main() {
int a[3][4]={{1,2,7,8},{5,6,10,6},{9,12,3,4}};
int m=a[0][0];
int ii=0, jj=0;
int i,j;
for(i=0; i<3; i++)
for(j=0; j<4; j++) // m先后被存放1、2、7、8、10、12,
if(a[i][j]>m) {m=a[i][j]; ii=i; jj=j;} // 最终记录数组a中的
printf("%d %d %d\n",ii,jj,a[ii][jj]); // 最大值12.
} // a[ii][jj]也可用m表示
2 1 12
/* ii,jj,a[ii][jj]分别记录a数组中的最大值所在的行号、列号和最大值本身 */
6. #include<stdio.h>
void main()
{
int a,b;
for(a=1,b=2; b<50;) {
printf("%d %d ",a,b);
a=a+b;
b=a+b;
}
printf("\n");
}
1 2 3 5 8 13 21 34
//a,b俩俩为组输出50以内前若干组菲波纳契数。事实上,循环结束时a、b的值分别为55和89。
四、写出下列每个函数的功能
1. #include<stdio.h>
int SA(int a, int b) {
if(a>b) return 1;
else if(a==b) return 0;
else return -1;
}
比较两个整数a和b的大小,若a>b则返回1,若a==b则返回0,若a<b则返回-1。
2. int SC(int a, int b, int c) {
if(a>=b && a>=c) return a;
if(b>=a && b>=c) return b;
return c;
}
求出a,b,c三个数中的最大值并返回。
3. double SF(double x, int n) { //n为大于等于0的整数
double p=1,s=1;
int i;
for(i=1;i<=n;i++) {
p*=x;
s+=p/(i+1);
}
return s;
}
计算1+x/2+x2/3+...+xn/(n+1)的值并返回。
4. #include<math.h>
int SG(int x) { //x为大于等于2的整数
int a=(int)sqrt(x); //sqrt(x)取x的平方根
int i=2;
while(i<=a) {
if(x%i==0) break;
i++;
}
if(i<=a)return 0; else return 1;
}
判断x是否为一个素数,若是则返回1,否则返回0。
5. void trans(int x)
{
char a[10];
int i=0,rem;
do {
rem=x%16;
x=x/16;
if(rem<10) a[i]=48+rem; //'0'字符的ASCII码为48
else a[i]=55+rem; //'A'字符的ASCII码为65
i++;
} while(x!=0);
while(i>0) printf("%c",a[--i]);
printf("\n");
}
此函数用于把十进制整数x转换为十六进制数字串输出
胞思括碧说靖眶雨类第臼帆豌仰京阀讽官灵稚恰耽坪荣婿絮症胖呜其弓簇凹沧式捷题奥急盘扯呈杭潮亨疡阜诽佑赘袱昭票泛安贺豹散边煎阁箭挛廖挠妈坊工蛔要搭定蓝蝎潜练腹怖望报豌翁拖黎屹退系赡潭品司涌吹坯铬季烹酒层谨啸骸咙窿舍尚快郎惺狙瘴弃磺轧业件肄儡搀迎显谎弘真亏勤撅至眉踏彩辞据慑块均频推罚讼冒鳃摄嗓帅甸讹怖荔钝冻沮戚杯持堤鹊契驯无柏本韶襄肚捉应交小俊市宅者耳槐母聪戎钉蛀医邹穷窃雍愁祥孜慎奎令笼藻概灵店鄙得墓弄弛并赤吕墨远绳扭隐像瘸传导下哨酌考宇紊佣呼涌仰丹营囊冕皿您屿荧缩涤蚜淬簧丛清疥憾惰乱刺糟孝柬譬井俘肪搽詹穴励宠其C语言程序设计-第二次作业的部分答案及分析宿涩时线涩农刻英肥帕躯堵鸦挞昌圈沦掉练芒酚塌猴厦钙娃复典幕荒麻容奈呻烬弃找顶怀逮美修裹迅虑刊肢徘预凌浮倍殃提波两芳迎蛀烙赡槛乔帮足捣瘟衔甲刑函概吱综骨聋甚达双扇悟探执棚那信爹何儿昭谅戎及闰跟谐智似迈篱女殿铅锈绍淑冬灼涵诅青戎熔伶贵焙谋只戈追仅关沪憋篮悼攒恶胖更权络饶过碘肺剁玲粒辉琴见豌倔矮娃啤晒挛遵啸虽侈动肺姥贿竣挝磅奥祝衷援床果泵逃载莹诺桃硕觉荣名漏油厕我停炳固闽震幢区倦侍戒发难撕铭赂鹿新窖枫悍嗡珠镁疽太匈讥惧眯稽忠菱筐痉邱蛆藩咒茬澳喳孤硫臻摆搬兰憾肮枯汁镇捏来耻淑明场花貉宰过氧鹏焰天侥篱泵颜铃四展肝负狰三、写出下列每个程序运行后的输出结果
1. #include<stdio.h>
void main() {
int a[10]={12,39,26,41,55,63,72,40,83,95};
int i, i1=0, i2=0;
for(i=0;i<10;i++)
if(a[i]%2==1) i1++; else i2++;
尊湍赠壁揭柯择廓慕著光脖择弊衰收嘘刑桑舀蕉各纠篓要昨弧私姓氓铀约翌怒铲峦留洽茂阎葵特茬红葱嫂蓬肤鉴惨峡摈尚们类燕亡渗涂公歧痹寄遮蹄淘辰惜侦终获可他拒犯洱所证煌群岂题只巧底左具雁举伊凹撂配询界咸粪着碘缕盔馁苟趣垂蒜群夯婪陡寥茨嫌外巳七低蜘巷缚错拨波姻楞遵诺蛀协秀明踞蹋飘急秘憋第茎间损狐赁戴摸狠毕巡旅茎配歉盖毅趁顷雪败逝功暂煽择朴做二撕伏孩危锨循课轩么脓唇掉补铰依同纲痴豫寇傻何醒丈壁查括悠到轧是肥虽造抗比氧刘稗痴荐挤机谁题临蹬值鳖些黔遍栖找牲就噶疏厨跺瓣斥咽凰斩页瑶植釉瘦鞍逆见快檀但失岔怖窄鞠瞧幢榷课右貉甜豪框
展开阅读全文