教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

C语言实验与习题(注释版)(12)

来源:网络收集 时间:2026-04-25
导读: C语言练习题 数,同时当a==b时则不再进行判断 { if(a%3==0) 满足条件输出数值 printf(\ } printf(\ getch(); } #include double fun(/**/ int n /**/) 观察fun函数调用该函数传递的数值及题目可知此处应定义一个整

C语言练习题

数,同时当a==b时则不再进行判断 {

if(a%3==0) 满足条件输出数值 printf(\ }

printf(\ getch(); }

#include

double fun(/**/ int n /**/) 观察fun函数调用该函数传递的数值及题目可知此处应定义一个整型形参变量,变量名由函数体里未被定义的变量确定 {

double y = 0.0; int i,j;

for(i=1;i<=n;i++)

{y = y +/**/ 1.0/(8+3*i) /**/; 注意计算结果有小数部分,此处分子要写成1.0 }

return (/**/ y /**/); }

void main() {

clrscr();

printf(\ getch(); }

#include void main() {

int m,n;

for(m=1; /**/ m<=5; /**/ m++) 外循环控制输出5层*号,内循环控制每层如何输出*号 { printf(\

41

期末复习题集

for(n=1;n<= /**/ 2*(m-1); /**/ n++) 输出*号前的空格 printf(/**/ “ ” /**/);

for(n=9;n>=m*2-1;n--) 输出每层* 号 printf(\ }

getch(); }

#include main() {

void fun(int); int v=300;

fun(/**/ v /**/); 将纸币数额传递给fun函数的形参 getch(); }

void fun(int m) m存放要兑换的纸币数额 {

int c1,c2;

以下for循环枚举1毛和2毛的各种可能取值,然后判断当前可能取值是否符合条件,符合的话就输出

for(c1=1;/**/ c1<=m/10 /**/ ;c1++) 全部为1角的情况下,c1最多可取m/10或30 { for(c2=1;c2<=15;c2++) 全部为2角的情况下,c1最多可取15或m/20 if(c1*10+c2*20==/**/ m /**/ ) 符合条件就输出 printf(\ } }

#include #include void main() {

int num1,num2,ans,flag; char op; clrscr();

42

C语言练习题

printf(\

scanf(\注意加取地址符&和变量的顺序 flag=0;用于标记用户输入是否出错 /**/ switch(op) /**/ {

case '+': ans=num1+num2; break; case '-': ans=num1-num2; break; case '*': ans=num1*num2; break; case '/': ans=num1/num2; break; default:

{ printf(\用户输入格式错误flag置为1 }

if /**/ (!flag) /**/ 用户输入正确的情况下将结果打印出来 printf(\ getch(); }

#include #include void main() {

char src[40],tag[40];

void ch_pw( ); 因为ch_pw()定义在main函数后,故此处进行了函数原型声明 printf(\

gets(src);接受用户输入的字符串存入到src内

strcpy(tag,src); 将src内存放的字符串复制到tag内 ch_pw( tag ); 将tag做为实参传递给ch_pw函数 printf(\ printf(\ getch(); }

void ch_pw(/**/ char str[] /**/) 形参接收函数被调用时传递过来的字符串,形参名由下面函数体内未被定义的字符数组str得来,形参是数组是定义可不指定元素个数,在函数体内定义一定要指定 {

char tab[4][2]={{'a','d'},{'s','f'},{'d','a'},{'f','s'}};存放要转换的字符和转换成什么字符 int j=0,i;

while( str[j] ) 遍历字符数组str的各个元素,直到str[j]==0即str[j]==?\\0?为止,因为?\\0?的ASCII码值刚好就是0

43

期末复习题集

{

for(i=0;i<=3;i++) 遍历tab数组每行下标为0的元素,判断其是否与当前访问的str[j]相等,若相等则把str[j]转换成相应行下标为1的元素 {

if(str[j]==tab[i][0]) {

/**/ str[j] /**/=tab[i][1] ; break; } }

/**/ j++ /**/ ; 要继续判断下一个元素,故下标应自增1 } }

#include #include void main() {

char str[80]; 由下面的puts(str)可知,将符合条件的字符存放在了str数组内 char c; int i;

/**/ i=0; /**/ 控制str下标的变化 printf(\

while((c=getchar())!='\\n') 接收用户的输入,getchar函数每次接受一个字符,并将其赋值给c,再判断c是否等于?\\n?即回车,不等的话就执行花括号内的语句,相等的话则退出循环,因此该while循环就是不断接收用户输入的字符,直到遇到回车为止 {

if(c>='A'&&c<='Z'||c>='a'&&c<='z') 当前输入的字符若满足条件,则将其存到字符数组str内

/**/ str[i++]=c; /**/此句相当于{str[i]=c;i++;} 将c赋值给str[i]后,要让i自增1得到下个准备接收符合条件的数组元素的下标 }

str[i]= /**/ '\\0'; /**/ 字符串都要以?\\0?做为其结束标志 puts(str); getch(); }

44

C语言练习题

#include #include #define N 9

void ivs(int a[ ]) {int i,temp;

for(i=0;/**/ i…… 此处隐藏:292字,全部文档内容请下载后查看。喜欢就下载吧 ……

C语言实验与习题(注释版)(12).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/520907.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)