码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 经典C语言题目程序题(函数篇)


    经典的C语言函数篇题目,看完你期末考试就没有问题了!快来一起看看吧!!!

    目录

    1.编写一个函数,可以算出 任意两个整数的和,并返回相应的结果

    2. 编写一个函数可以求出任意三个整数之中的最大值,并返回其最大值

    3.编写一个函数,可以实现给出算数运算的功能,给出两个值以及算数运算符号可以算出相应的结果 

    4.编写一个函数,判断是不是素数,是的话返回1,不是就返回0

    5.编写一个函数实现求数组的总和

    6.编写一个函数,实现冒泡排序的功能

    7.编写一个函数,实现输入一个字符串,可以求出字符串当中的大写、小写、数字、空格以及其他的字符

    8.编写一个函数(int strlrn(char str[])),实现字符串长度的求取

    9.编写一个函数void strlwr(char str[]),实现字符串小写变大写的功能

    10.编写一个函数void strupr(char str[]),实现字符串小写变大写功能

    11.编写一个函数void strcpy(char to[],char from[]),实现字符串复制功能

    12.编写一个函数void strcat(char str1[],char str2[]),实现字符串连接功能

    13.编写一个函数int strcmp(char str1[],char str2[]),实现字符串比较功能

    14.编写一个函数convent,求一个4*4方阵的转置矩阵;主函数中输入方阵,在主函数中将原矩阵和转置矩阵按格式输出

    15.编写一个函数可以求出任意整数的质数,并输出因子的乘积表示格式:12=2*2*3

    16.编写一个函数可以求出整数的位数


    1.编写一个函数,可以算出 任意两个整数的和,并返回相应的结果

    1. #include
    2. int add(int a,int b);
    3. int main()
    4. {
    5. int a,b,sum;
    6. printf("输入两个任意的整数:");
    7. scanf("%d %d",&a,&b);
    8. sum=add(a,b);
    9. printf("sum=%d\n",sum);
    10. return 0;
    11. }
    12. int add(int a,int b)
    13. {
    14. return a+b;
    15. }

    2. 编写一个函数可以求出任意三个整数之中的最大值,并返回其最大值

    1. #include
    2. int compare(int a,int b,int c);
    3. int main()
    4. {
    5. int a,b,c,max;
    6. printf("请你输入三个数:");
    7. scanf("%d %d %d",&a,&b,&c) ;
    8. max=compare(a,b,c);
    9. printf("max=%d",max);
    10. return 0;
    11. }
    12. int compare(int a,int b,int c)
    13. {
    14. int max =a;
    15. if(b>max)
    16. {
    17. max=b;
    18. }
    19. if(c>max)
    20. {
    21. max=c;
    22. }
    23. return max;
    24. }

    3.编写一个函数,可以实现给出算数运算的功能,给出两个值以及算数运算符号可以算出相应的结果 

    1. #include
    2. int math(int a,int b,char c);
    3. int main()
    4. {
    5. int a,b,c,sum;
    6. printf("请输入计算公式:");
    7. scanf("%d%c%d",&a,&c,&b);
    8. sum=math(a,b,c);
    9. printf("sum=%d\n",sum);
    10. return 0;
    11. }
    12. int math(int a,int b,char c)
    13. {
    14. int sum;
    15. switch(c)
    16. {
    17. case '+':sum=a+b;break;
    18. case '-':sum=a-b;break;
    19. case '*':sum=a*b;break;
    20. case '/':sum=a/b;break;
    21. case '%':sum=a%b;break;
    22. default:break;
    23. }
    24. return sum;
    25. }

    4.编写一个函数,判断是不是素数,是的话返回1,不是就返回0

    1. #include
    2. #include
    3. int isprime(int n);
    4. int main()
    5. {
    6. int n;
    7. printf("请输入一个整数:");
    8. scanf("%d",&n);
    9. printf("%d\n",isprime(n));
    10. return 0;
    11. }
    12. int isprime(int n)
    13. {
    14. int i;
    15. for(i=2;i<=sqrt(n);i++)//sqrt开方函数
    16. {
    17. if(n%i==0)
    18. {
    19. return 0;
    20. }
    21. }
    22. return 1;
    23. }

    5.编写一个函数实现求数组的总和

    1. #include
    2. int add(int a[],int n);
    3. int main()
    4. {
    5. int a[10]={1,2,3,4,5,6,7,8,9,10};
    6. int sum;
    7. sum=add(a,10);
    8. printf("sum=%d",sum);
    9. return 0;
    10. }
    11. int add(int a[],int n)
    12. {
    13. int i,sum=0;
    14. for(i=0;i<10;i++)
    15. {
    16. sum+=sum[i];
    17. }
    18. return sum;
    19. }

    6.编写一个函数,实现冒泡排序的功能

    1. #include
    2. int bubble(int a[],int n);
    3. int main()
    4. {
    5. int i;,j,temp;
    6. int a[10]={3,45,77,2,23,12,21,19,99,10};
    7. bubble(a,10);
    8. for(i=1;;i
    9. {
    10. printf("排序后的结果:%d\n",a[i]);
    11. }
    12. return 0;
    13. }
    14. int bubble(int a[],int n)
    15. {
    16. int i,j,temp;
    17. for(i=1;j
    18. {
    19. for(j=0;j
    20. {
    21. if(a[j]>a[j+1])
    22. {
    23. temp=a[j];
    24. a[j]=a[j+1];
    25. a[j+1]=temp;
    26. }
    27. }
    28. }
    29. }

    7.编写一个函数,实现输入一个字符串,可以求出字符串当中的大写、小写、数字、空格以及其他的字符

    1. #include
    2. #include
    3. int count(char str[],int a[]);
    4. int main()
    5. {
    6. char str[50];
    7. int a[5]={0};
    8. printf("请你输入一个字符串:");
    9. gets(str);
    10. count(str,a) ;
    11. printf("大写:%d\n",a[0]);
    12. printf("小写:%d\n",a[1]);
    13. printf("数字:%d\n",a[2]);
    14. printf("空格:%d\n",a[3]);
    15. printf("其他:%d\n",a[4]);
    16. return 0;
    17. }
    18. int count(char str[],int a[])
    19. {
    20. int i=0;
    21. while(str[i]!='\0')
    22. {
    23. if(str[i]>='A'&&str[i]<='Z')
    24. {
    25. a[0]++;
    26. }
    27. else if(str[i]>='a'&&str[i]<='z')
    28. {
    29. a[1]++;
    30. }
    31. else if(str[i]>='0'&&str[i]<='9')
    32. {
    33. a[2]++;
    34. }
    35. else if(str[i]==' ')
    36. {
    37. a[3]++;
    38. }
    39. else
    40. {
    41. a[4]++
    42. }
    43. i++;//下标加一,为的是检测到下一个字符
    44. }
    45. }

    8.编写一个函数(int strlrn(char str[])),实现字符串长度的求取

    1. #include
    2. int strlen(char str[]);
    3. int main()
    4. {
    5. char str[50];
    6. printf("请输入一个字符串:");
    7. gets(str);
    8. printf("%d\n",strlen(str));
    9. return 0;
    10. }
    11. int strlen(char str[])
    12. {
    13. int i=0;
    14. while(str[i]!='\0')
    15. {
    16. i++; //下标自增
    17. }
    18. return i;
    19. }

    9.编写一个函数void strlwr(char str[]),实现字符串小写变大写的功能

    1. #include
    2. void strlwr(char str[]);
    3. int main()
    4. {
    5. char str[50];
    6. printf("请输入一个字符串:");
    7. gets(str);
    8. strlwr(str);
    9. printf("%s\n",str);
    10. return 0;
    11. }
    12. void strlwr(char str[])
    13. {
    14. int i=0;
    15. while(str[i]!='\0')
    16. {
    17. if(str[i]>='A'&& str[i]<='Z')
    18. {
    19. str[i]=str[i]+32; //小写转换大写
    20. }
    21. i++; //下标自增
    22. }
    23. }

    10.编写一个函数void strupr(char str[]),实现字符串小写变大写功能

    1. #include
    2. void strupr(char str[]);
    3. int main()
    4. {
    5. char str[50];
    6. printf("请输入一个字符串:");
    7. gets(str);
    8. strupr(str);
    9. printf("%s\n",str);
    10. return 0;
    11. }
    12. void strupr(char str[])
    13. {
    14. int i=0;
    15. while(str[i]!='\0')
    16. {
    17. if(str[i]>='a'&& str[i]<='z')
    18. {
    19. str[i]=str[i]-32; //小写转换大写
    20. }
    21. i++; //下标自增
    22. }
    23. }

    11.编写一个函数void strcpy(char to[],char from[]),实现字符串复制功能

    1. #include
    2. void strcpy(char to[],char from[]); //字符串复制函数
    3. int main()
    4. {
    5. char str[50],a[50];
    6. printf("请输入一个字符串:");
    7. gets(a);
    8. strcpy(str,a);
    9. printf("%s\n",str);
    10. return 0;
    11. }
    12. void strcpy(char to[],char from[])
    13. {
    14. int i=0;
    15. while(from[i]!='\0')
    16. {
    17. to[i]=from[i];
    18. i++; //下标自增
    19. }
    20. to[i]='\0';//代表字符结束
    21. }

    12.编写一个函数void strcat(char str1[],char str2[]),实现字符串连接功能

    1. #include
    2. void strcat(char str1[],char str2[]);//字符串连接函数
    3. int main()
    4. {
    5. char str[50],a[50];
    6. printf("请输入一个字符串a:");
    7. gets(a);
    8. printf("请输入一个字符串str:");
    9. gets(str);
    10. strcat(str,a);
    11. printf("%s\n",str);
    12. return 0;
    13. }
    14. void strcat(char str1[],char str2[])
    15. {
    16. int i=0,j=0;
    17. while(str1[i++]!='\0');
    18. --i; //下标i多增加了一次
    19. while(str2[j]!='\0')
    20. {
    21. str1[i++]=str2[j++];
    22. }
    23. str1[i]='\0';//代表字符结束
    24. }

    13.编写一个函数int strcmp(char str1[],char str2[]),实现字符串比较功能

    1. #include
    2. int strcmp(char str1[],char str2[]);//字符串比较函数
    3. int main()
    4. {
    5. char str[50],a[50];
    6. printf("请输入字符串a:");
    7. gets(a);
    8. printf("请输入字符串str:");
    9. gets(str);
    10. printf("%d\n",strcmp(str,a));
    11. return 0;
    12. }
    13. int strcmp(char str1[],char str2[])
    14. {
    15. int i=0;
    16. while(str1[i]!='\0' || str2[i]!='\0')//只要有一个还没有结束
    17. {
    18. if(str1[i]>str2[i])
    19. {
    20. return 1; //只要比出结果就结束函数
    21. }
    22. if(str1[i]
    23. {
    24. return -1;
    25. }
    26. i++; //没有比出结果继续比下一位
    27. }
    28. return 0; //走到这代表相等
    29. }

    14.编写一个函数convent,求一个4*4方阵的转置矩阵;主函数中输入方阵,在主函数中将原矩阵和转置矩阵按格式输出

    1. #include
    2. void convert(int [][4]);
    3. void display(int a[][4]);
    4. int main()
    5. {
    6. int a[4][4],i,j;
    7. printf("请输入矩阵的元素值:\n");
    8. for(i=0;i<4;i++)
    9. {
    10. for(j=0;j<4;j++)
    11. {
    12. scanf("%d",&a[i][j]);
    13. }
    14. }
    15. printf("原矩阵为:\n");
    16. display(a); //调用显示函数
    17. convert(a); //调用转置函数
    18. printf("转置矩阵为:\n");
    19. display(a);//调用显示函数
    20. return 0;
    21. }
    22. void convert(int a[][4])
    23. {
    24. int i,j,t;
    25. for(i=0;i<4;i++)
    26. {
    27. for(j=i+1;j<4;j++)
    28. {
    29. t=a[i][j];
    30. a[i][j]=a[j][i];
    31. a[j][i]=t;
    32. }
    33. }
    34. }
    35. void display(int a[][4])
    36. {
    37. int i,j;
    38. for(i=0;i<4;i++)
    39. {
    40. for(j=0;j<4;j++)
    41. {
    42. printf("%5d",a[i][j]);
    43. }
    44. printf("\n");
    45. }
    46. }

    15.编写一个函数可以求出任意整数的质数,并输出因子的乘积表示格式:12=2*2*3

    1. #include
    2. void number(int n);
    3. int main()
    4. {
    5. int n;
    6. printf("请输入一个整数:");
    7. scanf("%d",&n);
    8. number(n);
    9. return 0;
    10. }
    11. void number(int n)
    12. {
    13. int temp=n;
    14. int i,j=0,a[20]={0};
    15. for(i=2;i<=n;i++)
    16. {
    17. if(n%i==0)
    18. {
    19. a[j++]=i;
    20. n=n/i; //去掉这一部分
    21. i=1; //重新从1开始判断
    22. }
    23. }
    24. printf("%d=%d",temp,a[0]);
    25. for(i=1;i
    26. {
    27. printf("*%d",a[i]);
    28. }
    29. printf("\n");
    30. }

    16.编写一个函数可以求出整数的位数

    1. #include
    2. int bitNumber(int n);
    3. int main()
    4. {
    5. int n;
    6. printf("请输入一个整数:");
    7. scanf("%d",&n);
    8. printf("位数:%d\n",bitNumber(n));
    9. return 0;
    10. }
    11. int bitNumber(int n)
    12. {
    13. int i=0;
    14. if(n<0)
    15. {
    16. n=-n;
    17. }
    18. while(n>0)
    19. {
    20. n/=10;
    21. i++;
    22. }
    23. return i;
    24. }

  • 相关阅读:
    老卫带你学---leetcode刷题(43. 字符串相乘)
    对于云原生时代的后端业务开发和项目系统学习,选Go Or Java?
    精品基于NET实现的图书馆借阅管理系统
    离散数学-万字课堂笔记-期末考试-考研复习-北航离散数学1
    PyCharm 2023.3.2 关闭时一直显示正在关闭项目
    GIT在window是 配置SSHKEY
    如何实现比PyTorch快6倍的Permute/Transpose算子?
    腾讯云服务器4核8g配置好不好?用它干啥使?
    数字签字那些事+ca数字证书
    Android 更新图标
  • 原文地址:https://blog.csdn.net/Lushengshi/article/details/127406857
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号