C语言练习题(9)
来源:互联网 发布:广告市场有多大 知乎 编辑:程序博客网 时间:2024/06/11 15:28
1、
(1)分析程序, 写出输出结果? char *ptr; if ((ptr = (char *)malloc(0)) == NULL) puts("Got a null pointer"); else puts("Got a valid pointer"); //会输出Got a valid pointer。原因:malloc(0)会返回一个特别的可以被成功释放的指针。
(2) 分析程序, 写出输出结果? char * GetStr() { char *tmp; tmp = "123" return tmp; } void main() { printf("%s.\n", GetStr()); }//会输出123。原因:返回指针指向常量123,常量在程序退出之后才释放。
2、输入一个正整数,输出原数并逆序打印出各位数字。
//例如:原数:123456 逆序:654321
//逆序函数原型:int invers_int(int x)(需要用到递归实现)
#include <stdio.h>int invers_int(int x){ printf("%d", x % 10); x /= 10; if (x == 0) return 0; else return(invers_int(x));}int main(void){ int num = 0; printf("Input numbers:"); scanf("%d", &num); printf("原数:%d\n", num); printf("逆序:"); invers_int(num); return 0;}
3、按以下规律翻译密码:将每一个字母变成它后面的字母,例如,将A变成B,B变成C,…,Z变成A,非字母字符不变,“!”作为电文结束标志。
#include <stdio.h>int main(void){ char c; while ((c = getchar()) != '!') { if ((c < 'Z'&&c >= 'A') || (c < 'z'&&c >= 'a')) printf("%c", c + 1); else if (c == 'z') printf("a"); else if (c == 'Z') printf("A"); else printf("%c", c); }}
阅读全文
0 0
- C语言练习题(9)
- C 语言练习题
- c语言循环练习题
- C语言程序练习题
- c语言练习题
- c语言练习题2
- c语言练习题1
- c语言练习题3
- c语言练习题
- c语言练习题
- c语言练习题
- c语言练习题
- c语言小练习题
- c语言练习题(二)
- C语言练习题 1
- C 语言练习题总结
- C语言练习题---strlen()
- C语言 基础练习题
- centos7忘记root密码解决办法
- phpcms v9 后台增加搜索关键字编辑管理功能
- 如何比较两个时间字符串的大小
- Android 常用开源库
- Stack
- C语言练习题(9)
- 笔记:什么是机器学习?-by周志华
- Linux SElinux以及iptables的关闭
- 2017-11-20 淘宝小测试
- 埃拉托色尼筛选法
- myeclipse安装activiti插件不成功
- final、finalize 和 finally 的不同之处
- 多重背包问题模板
- java 环境变量设置