C语言基础程序汇总
来源:互联网 发布:行装软件 编辑:程序博客网 时间:2024/06/05 03:28
C语言基础程序汇总
C语言打印九九乘法表
打印出所有的“水仙花”数。所谓“水仙花”数是指一个3位数,其各个位数字立方和等于该数本身。
c语言实现简单选择排序。
C语言冒泡法排序
C语言利用指针实现strcmp功能
C语言用函数实现strlen功能
编写程序将两个数组完成归并,并存入数组c中;
编写strcat函数(不调用C的字符串库函数,编写函数 strcat).
C语言打印九九乘法表
#include<stdio.h>int main(){ int i,j; for(i=1;i<10;i++) { for(j=1;j<=i;j++) { printf("%d*%d=%d ",j,i,j*i); } printf("\n"); } return 0;}
打印出所有的“水仙花”数。所谓“水仙花”数是指一个3位数,其各个位数字立方和等于该数本身。
#include<stdio.h>int main(){ int n=100,a,b,c,d; do { c=n/100; a=n%10; b=(n-c*100-a)/10; d=a*a*a+b*b*b+c*c*c; if(n==d) { printf("%d\n",n); } n++; }while(n<1000); return 0;}
c语言实现简单选择排序。
#include<stdio.h>int main(){ int a[] = {1,2,3,4,5,6,7,8}; int b,c,i,j,n; n = sizeof(a) / sizeof(int); for(i = 0; i < n-1; i++) { c = a[i]; for(j = i+1; j<n; j++) { if(c < a[j]) { b = c; c = a[j]; a[j] = b; } } a[i] = c; } for(i = 0; i<n; i++) { printf("%d ",a[i]); } printf("\n"); return 0;}
C语言冒泡法排序
#include<stdio.h>int main(){ int a[] = {1,2,3,4,5,6,7,8}; int b,c,i,j,n; n = sizeof(a) / sizeof(int); for(i = 0; i < n-1; i++) { c = a[i]; for(j = i+1; j<n; j++) { if(c < a[j]) { b = c; c = a[j]; a[j] = b; } } a[i] = c; } for(i = 0; i<n; i++) { printf("%d ",a[i]); } printf("\n"); return 0;}
C语言利用指针实现strcmp功能
#include<stdio.h>#include<string.h>int my_strcmp(char *a, char *b);int main(){ char a[] = "abcde"; char b[] = "abcde"; printf("use strcmp = %d\n",strcmp(a,b)); printf("use my_strcmp = %d\n",my_strcmp(a,b)); return 0;}int my_strcmp(char *a, char *b){ int r = 0; while(*a != '\0' || *b != '\0') { r = *a-*b; if(r != 0) { return r; } a++; b++; } return r;}
C语言用函数实现strlen功能
#include<stdio.h>#include<string.h>int my_strlen(char * p);int main(){ char s[] = "hello!"; int l; l=my_strlen(s); printf(" use strlen=%lu\n",strlen(s)); printf("no use strlen=%d\n",l); return 0;}int my_strlen(char * p){ int n=0; while(*p != '\0') { n++; p++; } return n;}
编写strcat函数(不调用C的字符串库函数,编写函数 strcat).
已知strcat函数的原型是 char *strcat(char *strDest, const char *strSrc);
strDest是目的字符串,strSrc是源串。
#include<stdio.h>#include<string.h>char *my_strcat(char *p,char *q);int main(){ char s1[100]="so "; char c1[100]="so "; char s2[]="many!"; char c2[]="many!"; puts(my_strcat(s1,s2)); strcat(c1,c2); puts(c1); return 0;}char *my_strcat(char *p,char *q){ char *a,*b; a=p; b=q; while(*a!='\0') { a++; } while(*b!='\0') { *a=*b; a++; b++; } *a=*b; return p;}
2. 已知两个升序数组a、b及空数组c:
Int a[] = {1,3,5,7,9,11,13,15,17,19};
Int b[] = {2,4,6,8,10,12,14,16,18,20};
Int c[20];
编写程序将两个数组完成归并,并存入数组c中;
#include<stdio.h>int *paixua(int *a,int *b,int a1,int b1,int *c);int main(){ int a[] = {1,2,4,7},a1 = sizeof(a)/sizeof(int); int b[] = {2,3,5,8,10,12},b1 = sizeof(b)/sizeof(int); int c[a1+b1],c1 = a1+b1,i,*p; p = paixua(a,b,a1,b1,c); for(i = 0; i<c1; i++) { printf("%d\n",c[i]); } puts(""); return 0;}int *paixua(int *a,int *b,int a1,int b1,int *c){ int *r = c,*p = c; int i,j = a1+b1,aa = 0,bb = 0; for(i = 0; i<j; i++) //最大比较次数 { if(*a <= *b && aa<a1) //取a数组靠前较小的数给c { *p = *a; a++; p++; aa++; } if(aa == a1) //如果a数组先取完跳出循环 { break; } if(*a>*b && bb<b1) //取b数组靠前较小的数给c { *p = *b; b++; p++; bb++; } if(bb == b1) //如果b数组先取完跳出循环 { break; } } while(aa != a1) //如果a数组没有取完,剩下的元素给c数组 { *p = *a; p++; aa++; a++; } while(bb != b1) //如果b数组没有取完,剩下的元素给c数组 { *p = *b; p++; bb++; b++; } return r; //返回c数组起始地址}
阅读全文
0 0
- C语言基础程序汇总
- c语言基础问题汇总
- C语言程序基础
- C语言基础-部分基础理论知识汇总
- C语言程序基础4.5
- 基础的C语言程序
- C语言基础小程序
- 程序基础C语言常量(const)参数
- 计算机基础-C语言程序编译过程
- c语言基础之小程序
- 回归基础之C语言程序1
- C语言基础 程序暂停1秒钟
- 《C语言程序开发范例宝典》-基础
- C语言基础程序 查找篇
- [C语言基础]一些C语言小程序(一)
- [C语言基础]一些C语言小程序(二)
- C语言面试题大汇总(1)基础
- OpenCV基础程序汇总
- Bootstrap Table 实现简单的查询和显示功能
- Java集合类框架汇总
- Android Material Design 之 BottomNavigationView
- hdu6070 Dirt Ratio (线段树:二分+多次建树+构造难想)
- Visual Stdio 2017 无法找到资源编译器rcdll.dll
- C语言基础程序汇总
- html/CSS笔试习题总结1
- Spark入门(三):RDD概述
- leetcode: 76. Minimum Window Substring
- Hadoop基础教程-第11章 Hive:SQL on Hadoop(11.6 HQL:DML数据操纵)(草稿)
- 每日MySQL之019:使用SHOW命令查看数据库信息
- [深度学习之CNN] 卷积神经网络(CNN)基础介绍
- 如何查看目录下文件的行或者字数等信息
- 关于IO流