C语言中的经典小程序1
2013-09-05 23:23
387 查看
首先声明所写的这些函数都是本人自己实践过的,每一个程序都是能够实际运行的。
1.将一个十进制的无符号整型数据转换成二进制形式表示,用C语言实现。
我写了一个程序,经过运行能够实现:
#include<stdio.h>
void funcint_to_ox(unsigned int a);
int main(void)
{
unsigned int m;
printf("please input an unsigned int number:\n");
scanf("%d",&m);
printf("转换前数字为%d\n",m);
printf("转换后数字为:\n");
funcint_to_ox(m);
return 0;
}
void funcint_to_ox(unsigned int a)
{
int i = 32;
while(i-->=1)
{
if(a&(1<<i))
{
printf("1");
}
else
{
printf("0");
}
}
printf("\n");
}
其实这个程序不仅仅是实现十进制转二进制的表示,当然也可以实现八进制转二进制的表示。
2.用C语言实现将整数转换成字符串数(即自己实现itoa这个函数)。
#include<stdio.h>
void i_to_a(int m);
int main(void)
{
int a ;
printf("please input an int number:\n");
scanf("%d",&a);
printf("转换之前的整数为:%d\n",a);
i_to_a(a);
return 0;
}
void i_to_a(int m)
{
int i = 0, j = 0, k = 0;
char str[32],temp[32];
while(m)
{
temp[i] = m%10+'0';
m = m/10;
i = i++;
}
temp[i]='\0';
printf("the temp is %s\n",temp);
while(i>=0)
{
str[j] = temp[i-1];
j++;
i--;
}
str[j-1]= '\0';
printf("转换成字符串之后为:%s\n",str);
}
3.用C语言实现字符串转化成整数(即自己实现atoi这个函数)。
#include<stdio.h>
void a_to_i(char * m);
int main(void)
{
char b[32];
printf("please input a string:\n");
scanf("%s",b);
printf("转换前的字符为:%s\n",b);
a_to_i(b);
return 0;
}
void a_to_i(char *m)
{
int i = 0, j = 0, k = 0,sum = 0;
char str[32],temp[32];
while(*(m+j)!='\0')
{
temp[i]=*(m+j);
i++;
j++;
}
temp[i]='\0';
printf("the temp is :%s\n",temp);
while(k<i)
{
sum = sum *10+(temp[k]- '0');
k++;
}
printf("转换成整型数之后为:%d\n",sum);
}
4.用C语言实现冒泡排序。
#include <stdio.h>
void inputarr(int *arr,int n);
void outputarr(int *arr,int n);
void bubblesort(int *sort,int n);
int main(void)
{
int sort[5];
printf("请输入五个数字\n");
inputarr(sort,5);
bubblesort(sort,5);
outputarr(sort,5);
return 0;
}
void inputarr(int *arr,int n)
{
int i;
for(i = 0; i<n; i++)
{
scanf("%d",(arr+i));
}
}
void outputarr(int *arr,int n)
{
int i;
for(i= 0; i<n; i++)
{
printf("%d ",*(arr+i));
}
printf("\n");
}
void bubblesort(int *sort, int n)
{
int i,j,t;
for(i=0; i<n-1;i++)
{
for(j= 0;j<n-1-i;j++)
{
if(*(sort+j)>*(sort+j+1))
{
t = *(sort+j);
*(sort+j)= *(sort+j+1);
*(sort+j+1)= t;
}
}
}
}
1.将一个十进制的无符号整型数据转换成二进制形式表示,用C语言实现。
我写了一个程序,经过运行能够实现:
#include<stdio.h>
void funcint_to_ox(unsigned int a);
int main(void)
{
unsigned int m;
printf("please input an unsigned int number:\n");
scanf("%d",&m);
printf("转换前数字为%d\n",m);
printf("转换后数字为:\n");
funcint_to_ox(m);
return 0;
}
void funcint_to_ox(unsigned int a)
{
int i = 32;
while(i-->=1)
{
if(a&(1<<i))
{
printf("1");
}
else
{
printf("0");
}
}
printf("\n");
}
其实这个程序不仅仅是实现十进制转二进制的表示,当然也可以实现八进制转二进制的表示。
2.用C语言实现将整数转换成字符串数(即自己实现itoa这个函数)。
#include<stdio.h>
void i_to_a(int m);
int main(void)
{
int a ;
printf("please input an int number:\n");
scanf("%d",&a);
printf("转换之前的整数为:%d\n",a);
i_to_a(a);
return 0;
}
void i_to_a(int m)
{
int i = 0, j = 0, k = 0;
char str[32],temp[32];
while(m)
{
temp[i] = m%10+'0';
m = m/10;
i = i++;
}
temp[i]='\0';
printf("the temp is %s\n",temp);
while(i>=0)
{
str[j] = temp[i-1];
j++;
i--;
}
str[j-1]= '\0';
printf("转换成字符串之后为:%s\n",str);
}
3.用C语言实现字符串转化成整数(即自己实现atoi这个函数)。
#include<stdio.h>
void a_to_i(char * m);
int main(void)
{
char b[32];
printf("please input a string:\n");
scanf("%s",b);
printf("转换前的字符为:%s\n",b);
a_to_i(b);
return 0;
}
void a_to_i(char *m)
{
int i = 0, j = 0, k = 0,sum = 0;
char str[32],temp[32];
while(*(m+j)!='\0')
{
temp[i]=*(m+j);
i++;
j++;
}
temp[i]='\0';
printf("the temp is :%s\n",temp);
while(k<i)
{
sum = sum *10+(temp[k]- '0');
k++;
}
printf("转换成整型数之后为:%d\n",sum);
}
4.用C语言实现冒泡排序。
#include <stdio.h>
void inputarr(int *arr,int n);
void outputarr(int *arr,int n);
void bubblesort(int *sort,int n);
int main(void)
{
int sort[5];
printf("请输入五个数字\n");
inputarr(sort,5);
bubblesort(sort,5);
outputarr(sort,5);
return 0;
}
void inputarr(int *arr,int n)
{
int i;
for(i = 0; i<n; i++)
{
scanf("%d",(arr+i));
}
}
void outputarr(int *arr,int n)
{
int i;
for(i= 0; i<n; i++)
{
printf("%d ",*(arr+i));
}
printf("\n");
}
void bubblesort(int *sort, int n)
{
int i,j,t;
for(i=0; i<n-1;i++)
{
for(j= 0;j<n-1-i;j++)
{
if(*(sort+j)>*(sort+j+1))
{
t = *(sort+j);
*(sort+j)= *(sort+j+1);
*(sort+j+1)= t;
}
}
}
}
相关文章推荐
- 理工大学ACM平台题答案关于C语言 1131 C/C++经典程序训练1---最大公约数与最小公倍数
- 10个经典的C语言小程序
- 10个经典的C语言小程序
- c语言10个经典小程序
- C语言10个经典小程序--致新手
- C语言中的经典小程序2
- C语言经典100题-程序21
- c语言10个经典小程序
- 10个经典的C语言小程序
- C语言中的经典小程序6
- 10个经典的C语言小程序
- c语言10个经典小程序
- C语言经典例程100例(经典c程序100例)
- 学C语言_指针_2_经典指针程序_互换两个数字
- C语言18个经典小程序(一)
- 第5周 经典小程序3题 C语言写的简单的定时关机程序
- C语言中的经典小程序8——选择排序
- C语言18个经典小程序(二)
- C语言必背18个经典程序
- c语言10个经典小程序