
C 语言题库
C 语言题库
闲狗
悠闲的狗生
展开
-
05 程序题
1#include<stdio.h> int main(){ char str1[]={"abc"}; // 3 printf("%d",strlen(str1)); char str2[]={'a','b','c'}; // 长度不能确定 printf("%d",strlen(str2)); char str3[10]={'a','b','c'}; // 3 printf("%d",strle原创 2020-06-15 23:49:01 · 471 阅读 · 0 评论 -
05 输出 n 以内的所有素数
请编写一程序,该程序对于任意输入的正整数 n,输出 n 以内的所有素数(n>2)。#include<stdio.h> int main(){ int n; printf("please enter a number:"); scanf("%d",&n); if(n<2){ printf("number must >= 2"); return 0; } int i,k; fo原创 2020-06-15 23:09:26 · 2709 阅读 · 1 评论 -
06 程序题
1 "||","!=","<=" 和 "+" 这四种运算符中,优先级最低的运算符是 "||"2 数组指针 int(*p)[n] 的含义是() 优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是 n指针数组 int *p[n] 的含义是[] 比 * 的优先级高,p 先与 [n] 结合,形成 p[n] 的数组形式,它有 n个元素,然年再与 * 结合,表示是指针类型的数组。...原创 2020-06-10 07:49:00 · 562 阅读 · 0 评论 -
06 多个文件连接成一个文件
编写一个 C 程序 fact.c,将命令行中指定的多个文本文件连接成一个文本文件。例如:fcat file1 file2 file3其中,fcat 为命令名,file1,file2 和 file3 为参数。该命令的功能是将文本文件 file1,file2 和 file3 连接成为一个文本文件(文件名由第一个参数 file1 指定)...原创 2020-06-09 21:44:45 · 663 阅读 · 0 评论 -
06 输出同构数
请编写一 C 语言程序,该程序要求(输出)1-1000以内的所有同构数。同构数:对于一个 N 位的自然数,其数的平方值的末尾的 N 位数等于该数。如,5 的平方为 25,25 的末尾 1 位数为5。25 的平方为 625,625 的末尾 2 位数为 25。...原创 2020-06-04 08:23:39 · 2202 阅读 · 0 评论 -
07 输出 n 个素数
使用命令行参数形式编写 C 语言程序以实现从 2 开始连续输出 n 个素数。设命令行格式为outprime n例如:执行命令outprime 10的结果是:2,3,5,7,11,13,17,19,23,29要求:程序中必须有命令行的正确性检查...原创 2020-06-04 08:16:31 · 658 阅读 · 0 评论 -
07 程序题
01#include <stdio.h>int main(){ char a='a'; int b=1; float c=1.0f; double d = 2.0; printf("char %d\n",sizeof(a)); printf("int %d\n",sizeof(b)); printf("float %d\n",sizeof(c)); printf("double %d\n",sizeof(d))原创 2020-06-04 00:29:52 · 380 阅读 · 0 评论 -
07 输出螺旋式数字方阵
请写出一个 C 语言程序,该程序对输入的任意正整数n,产生并且显示相应的 n 阶螺旋式数字方阵。例如,当 n =5时,要显示的螺旋式数字方阵为原创 2020-06-03 08:26:10 · 1187 阅读 · 0 评论 -
08 程序题
01#include <stdio.h>int main(){ char *s1[] = {"right?"}; // 系统会根据数据总个数和第2维的长度算出第1维的长度 char s2[][20] = {"right"}; // 存放着 6 个指针变量的一位数组 char *s3[6]; s3[1]="right"; char s4[6][20]; // 报错,s4[1] 是一个地址 .原创 2020-05-31 19:15:23 · 476 阅读 · 0 评论 -
08 复制字符串
请编写一程序,将一个字符串的第 k 个元素开始的全部字符复制成为另外一个字符串。要求:将复制过程单独编写为一个函数,并且采用指针完成在主函数中输入字符串和k的值,并且在主函数中输出复制结果原创 2020-05-31 14:13:48 · 388 阅读 · 0 评论 -
10 程序题
1#include<stdio.h>int main(){ int a=1,b=2,c=3; // 等于 a=(b--<=a)||(a+b!=c) a=b--<=a||a+b!=c; printf("%d,%d\n",a,b);}执行结果:2#include<stdio.h>f(char *s){ char *p=s; while(*p) p++; // 返回两个地.原创 2020-05-24 11:22:58 · 761 阅读 · 0 评论 -
11 程序题
11(1)#include<stdio.h>int main(){ char ch='A'; printf("ch(1)=%d,ch(2)=%c \n", ch,ch+1);}执行结果:(2)#include<stdio.h>int main(){ int k=1,t=3; do{ // t=4,k=2; t=7,k=4; t=11,k=5; t=17,k=7 t+=k++;原创 2020-05-17 15:12:48 · 395 阅读 · 0 评论 -
11 递归求和
请编写一个 C 语言程序,该程序的功能是先通过键盘输入一个整数 n,然后调用一个递归函数 fun(int n) 计算 1+2+3+...+n,最后输入计算结果。原创 2020-05-17 10:53:07 · 1439 阅读 · 0 评论 -
12 判断输入的字符串是否为回文串
参考:算法二十五:回文串回文串:字符串倒序写出来和该字符串相同。比如aba,倒序写出来也是aba,故aba是回文串。而abab不是回文串,因为倒过来写是baba。编写程序判断输入的字符串是否为回文串。...原创 2020-05-17 10:33:49 · 1796 阅读 · 0 评论 -
12 合并文件
打开两个已存在的文件 file1 和 file2,并将 file2 拼接到 file1 的后面。原创 2020-05-17 09:57:18 · 309 阅读 · 0 评论 -
12 合并字符串
将已经按升序排好序的两个字符串 str1 和 str2 中的字符再按升序归并到字符串 str3 中。原创 2020-05-17 09:26:14 · 539 阅读 · 0 评论 -
08 替换文件的单词
请使用命令行参数形式编写程序,该程序将指定文本文件中所有某个单词的出现均替换为另一个单词,经过替换后的文件信息存放于另一个文本文件中。设命令行格式为:replace oldfile newfile oldword newword其中,replace 为命令名,oldfile,newfile,oldword,newword 为命令行参数。例如,执行命令replace file...原创 2020-05-05 16:47:59 · 762 阅读 · 0 评论 -
10 累加求和
请编写程序,该程序首先通过键盘输入获得整型数据 a 与 n,然后计算 sum = a+aa+aaa+...(共 n 项),最后输入计算结果。例如:当 a=5,n=4 时,计算 sum = 5+55+555+5555#include<stdio.h>void main(){ int n=0, count=0; long a=0, sum=0, temp=0; ...原创 2020-05-05 16:40:04 · 1771 阅读 · 0 评论 -
10 打印文件最后 n 行
在 Unix 操作系统中有一条命令,命令的功能是打印文本文件的最后 n 行。命令格式为:tail [-n] filename其中,tail 为命令名;参数 filename 为文本文件名;参数 [-n] 表示要打印的行数,该参数是可选的,缺省值为 10,即无此参数时,表示打印文件的最后 10 行。例如:命令tail -20 ecample.txt表示打印文本文件 exa...原创 2020-05-05 15:37:41 · 775 阅读 · 0 评论 -
13 求两个字符串的最长公共单词
请仅编写出一 C 语言函数char *maxword(char *s,char *t),该函数的功能是求出字符串 s 与字符串 t 的最长公共单词(这里,假设两个字符串均由英文字母和空格字符组成);若能找到这样的公共单词,函数返回该单词,否则,函数返回 NULL。例如:若 s = “This is C programming text”,t = "This is a text for C pr...原创 2020-04-25 15:26:47 · 1357 阅读 · 0 评论 -
13 找出并删除一维整型数组的最小值元素
请编写一程序,找出并删除一维整型数组 a[100] 中最小值元素。要求:(1)数组各元素通过键盘输入获得初值(2)所有对数组元素的引用必须通过指针完成...原创 2020-04-25 14:49:41 · 1776 阅读 · 0 评论 -
15 字符串循环移动
将长度为 n 的序列 a 中各元素依次顺序循环右移 m 个位置。如:序列 a={1,3,5,7,9,11},若 m = 2,则循环右移后的结果为a={11,9,1,3,5,7}。原创 2020-04-05 00:12:56 · 337 阅读 · 0 评论 -
14 统计子串出现的次数
请编写一程序,该程序的功能是计算并输出某子串 substr 在主串 str 中出现的次数要求:(1)把子串在主串中出现次数的过程编写为一个独立的函数:int STRCOUNT(char *str, char *substr)(2)若主串 str 中未出现子串 substr,则函数STRCOUNT 返回 0(3)在主函数中通过键盘的方式分别给 str 与 substr 赋值,并且...原创 2020-03-29 15:34:57 · 1403 阅读 · 0 评论 -
15 排序字符串中的字符并去重
通过键盘接收一个字符串,按字符顺序对串中字符从小到大进行排序,同时删除串中重复出现的字符。原创 2020-03-29 13:13:18 · 359 阅读 · 0 评论 -
15 字符串中查找字符并删除字符
编写一程序,确定字符串中首次出现某个字符在串中的位置(即该字符是字符串中的第几个字符),然后从字符串中删除该字符。要求:1 确定字符位置以及删除该字符的过程编写为一个独立的函数。(注:函数中不考虑非首次出现该字符的删除)2 在主函数中通过键盘输入字符串和被确定的字符。若字符串中没有被确定的字符,程序给出相应信息,否则,输出该字符在字符串中首次出现的位置,并且显示删除前后的字符串。...原创 2020-03-22 12:26:15 · 1213 阅读 · 0 评论 -
17 读取文件最后一行
现要打开C:盘根目录下名为 tag.txt 的文本文件,打印出该文件的最后一行文本(假设该文件中每一行文本的长度不超过100),之后关闭该文件。请写出实现该逻辑的代码段。注意:如果文本文件不存在或者内容为空,则打印出字符串“the file is empty”。...原创 2020-03-05 00:33:24 · 915 阅读 · 2 评论 -
15 查找最大 ASCII 码值的字符
编写一程序,该程序的功能是首先将用户通过键盘输入的若干字符(用 EOF 结束输入)存入一维数组 s 中,然后找出数组中具有最大 ASCII 码值的字符,并且输入该字符以及该字符对应的 ASCII 码。要求:程序中有关输入,输入以及查找等操作必须通过指针来完成。...原创 2020-02-25 23:55:07 · 2625 阅读 · 0 评论 -
16 计算学生平均成绩
设存储在 D 盘根目录下的文本文件 score.dat 中记录着学生的姓名和成绩,每一行表示一个学生的信息,包括学生姓名(姓名中不不存在空格等特殊符号)和成绩,它们之间用制表符(\t)分隔,例如:zhangsan 84.5Lisi 78wangwu 65.5Maliu 90请针对该文件写一个程序,该程序的功能是计算所有学生的平均成绩,并输出其中成绩最高的 ...原创 2020-02-25 23:43:58 · 2211 阅读 · 0 评论 -
16 字符串比较函数
字符串处理函数 strcmp(s1, s2) 可以比较两个字符串的大小,其字符的大小是以 ASCII 码表上的顺序决定。该函数首先将 s1 第一个字符值减去 s2 的第一个字符值,若差值为 0 则继续比较对应的下一个字母,若不为 0 则该差值就是函数的最终结果。请按照该函数的实现原理,写出一个新的字符串比较函数 strcmp_nc(s1, s2),该函数的功能与 strcmp 类似,但不区分字...原创 2020-02-25 23:38:29 · 1731 阅读 · 0 评论 -
17 数字字符串转换为整数
编写一个 C 语言程序,该程序首先读取用户通过键盘输入的一个字符串(该字符串由数字字符和非数字字符组成),然后将其中连续的数字字符作为一个整数取出来,保存到相应的整数数组中,最后将这些整数按照从大到小的顺依次输出。例如:某用户输入的字符串为 “ABC123de45f*#6?*789&”,则应该分别提取出 123,45,6 和 789 四个整数,然后按照789, 123, 45, 6 的顺序...原创 2020-02-25 21:43:41 · 3871 阅读 · 0 评论 -
17 累加求和
编写一 C 语言函数 psum,该函数的功能是先接收两个整数类型的参数 a 和 n,然后计算表达式需要注意的是,当 a 或者 n 小于等于 0 时,该函数返回 0。(提示,可以先写一个求解 的辅助函数,再在 psum 函数中计算累加和)...原创 2020-02-25 16:29:32 · 606 阅读 · 0 评论 -
18 FASTQ 文件
FASTQ 文件是一种存储生物序列(通常称为核酸序列)以及相应质量评价的文本格式文件。整个文件包含多条生物序列,每条生物序列由四行信息组成:第 1 行为序列标识,以‘@’开头;第 2 行是具体的生物序列(即由 A、T、G、C 组成的核酸序列);第 3 行以‘+’开头,后面是序列的描述信息;第 4 行是质量信息,与第 2 行的序列一一对应,每个序列均有一个质量评分,采用字符表示,该字符的 ASCII...原创 2020-02-21 23:48:28 · 888 阅读 · 1 评论 -
18 计算指定子串出现的频率
模式匹配Pattern Matching请编写一 C 语言函数 freqs,该函数用于计算某个长字符串(称为源字符串)中指定子串(称为目标子串)出现的频率。该函数有两个参数,第一个参数为源字符串(source),第二个参数为目标子串(destination);函数返回目标子串在源字符串中出现的次数。若目标子串没有出现在源字符串中,则函数返回 0。例如:若源字符串为“abcdefgdefkdxe...原创 2020-02-19 00:49:21 · 708 阅读 · 0 评论 -
19 变位词
所谓变位词是指把某个单词的字母的位置(顺序)加以改换所形成的一个新词。例如:silent 是 listen 的一个变位词,integral 是 triangle 的一个变位词。请编写一个 C 语言程序,用来求解某个单词在一篇文章中的变位词。用户通过键盘输入一个单词和一个文本文件的名称,程序按照升序输出在这个文本文件中出现的该单词的所有变位词(同一个变位词多次出现,只输出一次)。如果没有变位词,...原创 2020-02-15 22:46:13 · 1190 阅读 · 0 评论 -
19 根据指定日期计算是星期几
请编写一 C 语言函数 get_weekday,该函数用于计算某一天是星期几。函数接收三个整型参数,分别表示年(year),月(month)与日(day);并返回一个整数表示星期几,用 0 表示星期日,1-6 表示星期一到星期六。说明:已知公元元年(即 1 年)1 月 1 日是星期一。为简化问题,只考虑公元后的日期,即年 >= 1。...原创 2020-02-15 20:59:22 · 1960 阅读 · 0 评论 -
不想被发现的 C 语言综合题
参考:把C语言当成新垣结衣去了解19(1)已知 x 是一个三位正整数,其个位,十位和百位数字依次为a,b 和 c,请写出三条不同的 C 语言表达式,并分别求出 a,b 和 c 的值。a = x%10 b = x/10%10 c = x/100(2)在函数内部定义的静态局部变量在存储和使用上与普通局部变量有何不同?静态局部变量在静态存储区内分配存储单元,程序运行期间不释放。函数内部的 static 变量在编译时赋初值,只赋值一次,生命周期为程序运行期...原创 2020-04-25 13:51:22 · 617 阅读 · 0 评论