在字符数组任意位置插入字符
#include<stdio.h>
int main()
{
int len,i,num;
char a[20],b[20],c;
len=sizeof(a)/sizeof(a[0]);
printf("please input num and char and str\n");
scanf("%d %c %s",&num,&c,&a);
for(i=0;i<len;i++)
{
if(i<num-1)
{
b[i]=a[i];
}
else if(i==num-1)
{
b[i]=c;
}
else
{
b[i]=a[i-1];
}
}
printf("%s",b);
return 0;
}
在字符数组任意位置插入字符串
#include<stdio.h>
#include<string.h>
#include<math.h>
int main()
{
int num,i,j;
char q[11]={'q','w','e','r','t','y','u','i','o','p','a'} , c[10];
// printf("input 10 char\n");
printf("input a num and string ");
scanf("%d%s",&num,&c);
j=strlen(c);
/*for( i=0; i<10; i++)
{
scanf( "%c" , q[i] );
}*/
for(i=0;i<j;i++)
{
printf("%c ",q[i]);
}
/* for(i=num+j+1;i<10;i++)
{
q[num+j+2]=q[num+j+1];
}
q[num]=c;*/
strncpy(q,c,j);
for(i=0;i<10;i++)
{
printf("%c ",q[i]);
}
return 0;
}
输出1-n中9的个数
#include<stdio.h>
int main()
{
int n,i,j,a=0,k=1,num;
printf("input a num\n");
scanf("%d",&n);
num=n;
/*for(i=1;i<100;i++)
{
n=n/10;
if(n!=0)
{
k+=1;
}
else
break;
}
printf("%d\n%d",k,num);*/
for(i=1;i<=num;i++)
{
j=i;
while(j!=0)
{
if(j%10==9)
{
a++;
}
j=j/10;
}
/*for(j=1;j<=k;j++)
{
if(i%10==9)
{
a++;
}
i=i/10;
if(i==0)
{
break;
}
}*/
}
/* for(i=1;i<=num;i++)
{
for(j=0;j<k;j++)
{
if(i%10==9)
{
a++;
i=i/10;
if(i==0)
break;
}
else
{
i=i/10;
if(i==0)
break;
}
}
}*/
printf("%d",a);
}
输出一千以内的完数
#include<stdio.h>
int main()
{
int i, j, a, sum=0;
for(i=2;i<=1000;i++)
{
for(j=1;j<i;j++)
{
a=i%j;
if(a==0)
sum=sum+j;
}
if(sum==i)
{
printf("%d ",i);
}
sum=0;
}
}
以及趣味100题中的11-15