2010C语言题目解答,2010c语言题目解答剖析.docx
2010 高考真题详解
第一套
【程序填空】 题目:对只包含 '-'和字母字符的字符串str 进行如下处理:
删除 str 中前导和尾部连续的 '-'字符,保留串中字母字符以及字母间的'-'字符。
例如, str 中初始字符串为 "C--Language--Test" 。
处理后, str 中的字符串为 "C--Language--Test" 。
程序中 isalpha 函数功能是判断参数是否是字母,是字母,函数值为真,否则函数值 为假。
#include
#include void main(){
char str[]={"---C--Language--Test---"};
int i,start,end;
i=0;
while(str[i++]=='-') ; /* 该循环体为空, 由前往后, 不等于 ‘ -',则退出循环, i 还多加 1, 实质 i 指向非减号的第二个字符 */
start=i-1; /*start 指实非减号的第一个字符 */ while(str[i] !=【?】){/*继续向后遍历字符串 */
if(isalpha(str[i])) /* 如果是字母,则 end=-1 ,表示不是结尾的地方 */
end=-1;
else if(isalpha(str[i-1])) /* 不是字母,如果前一个是字母,则结束的位置为当前的前一 个,即 end=i-1*/
end=i-1; /* 由于由前往后的,遍历结束后, end 只能保存最后一个结束的位置 */ i++;
}
str[end+1]='\0'; /* 在最后一个结束位置的字符后人工补\0,相当于去除尾部减号 */
for(i=start;i<=end+1;i++)/*通过循环,将从start开始到人工补的\0的所有字符前移*/
str[i-【?】]=str[i]; /*填start,这样i的初值为start,相当于第一个字符移到srt[O]*/
printf("%s\n",str);
} 答案:
. 0 或 '\0'
. start
【程序改错】
题目:函数unsigned fun(long s, int w)返回长整型变量 s中第w位的值,例如调用fun(216783,1) 函数返回3,调用fun(216783,3)函数返回7。main()从键盘接收一个长整数给变量 s,通过调 用fun()函数求s奇数位之和,例如数 216783各奇数位数字为1,7和3,它们的和为11。
下面给定的程序存在错误,请改正。
#include
unsigned fun(long s, int w)
{
int d;
while(w>0)
{
d %= 10; /*d=s%10; 取出 s 的最后一位 */
s /=10; /* 去除 s 的最后一位 */
w--;
}
return d;
}
main()
{
unsigned tot, w; /*累加器要赋初值 0,w 要赋初值 1*/
long s, step;
printf(" Enter a long integer number:");
scanf("%ld", &s);
step = s;
while (step!=0)
{
tot = fun( s ,w);/* 进行累加 tot+=fun(s,w)*/
w+=2; /*w 每次加 2,这样正好全为奇数 */ step /=100;
}
printf("tot=%d\n", tot);
return 0;
}
答案:
. d = s % 10;
. unsigned tot=0, w=1; 或 int tot=0, w=1; 或 unsigned int tot=0, w=1; 或 char tot=0, w=1; 或 unsigned char tot=0, w=1;
. tot += fun(s,w); 或 tot = fun(s,w) + tot; 或 tot = tot + fun(s,w); 【程序设计】 题目:找出二维整型数组 a[4][4] 中每行元素的最大值,并将该元素移动至该行首列。 编写程序:
1、编写 void findmax(int a[][N], int n[]) 函数:找出二维数组 a 中每行元素的最大值, 并将该元素的列下标存入数组n中,即第0行元素最大值的列下标存入n[0],...,第3行元
素最大值的列下标存入 n[3]。
2、编写void move(int a[][N],int n[])函数:根据数组 n中保存的数据,将 a数组中每 行最大值元素移动到该行首列,要求移动后该元素与该行其他元素的相对位置不变。
例如:
a 数组的初始数据为
2010C语言题目解答,2010c语言题目解答剖析.docx相关推荐
- c语言超级经典400道题目,C语言超级经典400道题目.doc
C语言超级经典400道题目1.C语言程序的基本单位是____ A) 程序行 B) 语句 C) 函数 D) 字符.C.1 2.C语言程序的三种基本结构是____ A.顺序结构,选择结构,循环结构 B.递 ...
- C语言扫地雷游戏的题目简介,C语言程序设计课程设计(论文)-扫地雷游戏.doc...
C语言程序设计课程设计(论文)-扫地雷游戏 辽 宁 工 业 大 学 C语言程序设计 课程设计(论文) 题目: 扫地雷游戏 院(系): 软件学院 专业班级: 电子商务091班 学 号: 学生姓名: 指导 ...
- 什么软件能解答c语言的题,C语言课本习题及解答.pdf
第一篇 习题及解答 本篇按教材上的章目,先对各章所附的习题进行解答,给出参考答案:然后按各章内容 给出各类课外习题,并对习题进行了解答,给出参考答案:接着编写了假期作业并进行了解 答,供大家参考选用: ...
- c语言程序设计教程第三版答案9.5,C语言程序设计-第5-9章习题解答.ppt
C语言程序设计-第5-9章习题解答 华中科技大学计算机学院 C语言程序设计 第5-9章 部分习题解答 作业中问题较多的习题 第5章5.4(2) 第6章6.1,6.3,6.5(6),6.8 第7章无 第 ...
- 循环相乘取整法C语言,华为OJ机试题目:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘)...
题目描述: 输出两个不超过100位的大整数的乘积. 输入: 输入两个大整数,如1234567 123 输出: 输出乘积,如:151851741 样例输入: 1234567 123 样例输出: 1518 ...
- 笔试一道honor的嵌入式软件程序编写题目【c语言字符串】
笔试一道honor的嵌入式软件程序编写题目 - 题目要求: 原题目:[给定一个字符串,将该字符串中的大写字母全部转换为小写,并将字母转换为数字0,最后将处理的字符串倒序输出.] 解析:[要求输入一组字 ...
- 在电脑测试c语言编程,C语言电脑编程兴趣班测试题目
<C语言电脑编程兴趣班测试题目>由会员分享,可在线阅读,更多相关<C语言电脑编程兴趣班测试题目(3页珍藏版)>请在人人文库网上搜索. 1.少年宫电脑编程兴趣班测试题目竞赛时间: ...
- 检索大写字母 c语言,c语言梦工厂梅丽题目含答案.docx
c语言梦工厂梅丽题目含答案 最大公约数 题目: 两个数能同时被一个数所整除,这个数就是公约数.例如,12和20的公约数有1,2,4.其中4是12和20的最大公约数. 输入要求: 输入两个正整数,用逗号 ...
- 一段c语言的自加程序输出xyz,c语言程序设计基础教程_习题解答2012.doc
c语言程序设计基础教程_习题解答2012 C语言程序设计基础教程_习题答案2012 习题答案 第1章 填空题 应用程序ONEFUNCC中只有一个函数这个函数的名称是__main 一个函数由__函数头_ ...
- C语言教辅书答案,《C语言程序设计上机指导与习题解答》任正云 主编;李素若_孔网...
本书是中国水利水电出版社出版的<C语言程序设计>的配套教材.书中内容分三个部分,第一部分是"C语言上机指南",这部分介绍了Turbo C 2.0.Turbo C++ 3 ...
最新文章
- 清华大学人工智能研究院自然语言处理与社会人文计算研究中心成立,重磅推出两场前沿学术报告和三项特色开源成果...
- java课程实战培训,终获offer
- 使用 Flex 布局与其他普通布局的简单对比
- QT:触摸屏支持手指触摸,增加touch事件touchevent,记录前后touch坐标并处理
- jupyter-使用及设置密码
- SpringBoot2.0整合Mybatis-Plus多数据源
- java string 字典序_[小白问题] Java 中路径 String 的字典序排序
- Ddos攻击攻击与防御
- 如何在不确定经济形势下把握好企业脉搏
- Test2 unit2+3
- 【Navicat】Navicat:Navicat 导出数据库表为 EXCEL 格式、设计优化数据字典 EXCEL 模板
- Linux bz2 解压命令
- SystemUI Monkey测试原生代码报错:MLand类ArrayIndexOutOfBoundsException
- 个人最喜欢的几款火狐扩展
- 【转】如何检测wifi信号强度? -- 不错
- 华为鲲鹏是芯片还是服务器,关于芯片:眼见为实华为鲲鹏架构服务器生态大揭秘...
- 什么是对象切片(Object Slicing)?
- commons-codec使用介绍
- 更改bootstrap工具提示-tooltip
- 一只计算机专业学生的【大一年度总结】