- 輸入2個正數a和n,求a+aa+aaa+……+a(n個a)之和;
2+22+222+2222+22222(此時n=5,a=2)
#include<stdio.h>
int main()
{
int t,a,n,s,i;
s=0;
t=0;
printf("請輸入一個n:");
scanf("%d",&n);
printf("請輸入一個a:");
scanf("%d",&a);
for(i=1;i<=n;i++)
{
t=t*10+a;
s=s+t;
printf("%d+",t);
}
printf("\b=%d\n",s);
}
- 一維數組的初始化,質數的判斷(函數),以及某數的質數因子輸出;
- 水仙花數,完數;
#include <stdio.h>
int main()
{
int i,a,b,c;
for(i=100;i<=999;i++)
{
a=i/100;
b=i%100/10;
c=i%10;
if(i==(a*a*a+b*b*b+c*c*c))
{
printf("%d ",i);
}
}
}
完數
#include <stdio.h>
int main()
{
int i,n,sum;
for(n=1;n<=1000;n++)
{
sum=0;
for(i=1;i<=n/2;i++)
{
if(n%i==0)
{
sum+=i;
}
}
if(n==sum)
{
printf("%d ",n);
printf("\n");
}
}
}
- 冒泡排序,選擇排序;
冒泡 -----
選擇---
二分 --
https://blog.csdn.net/ao_mike/article/details/102837833
輸入一個整數,判斷這個數的位數,各位數字之和,並逆序輸出這個數;
#include<stdio.h>
main()
{
int n,i,sum=0,count=0,temp=0;
printf("請輸入n的值:");
scanf("%d",&n);
for(i=n;i;i=i/10)
{
sum+=i%10;
temp=temp*10+i%10;
count++;
}
printf("%d是%d位數\n",n,count);
printf("%d各位數之和是%d\n",n,sum);
printf("%d的逆序輸出是%d\n",n,temp);
}
//也可以用三個函數來寫,記得函數原型聲明
int fun_ws(int n)
{
int i,count=0;
for(i=n;i;i=i/10)
count++;
return count;
}
int fun_wssum(int n)
{
int i,sum=0;
for(i=n;i;i=i/10)
sum+=i%10;
return sum;
}
int fun_nx(int n)
{
int i,temp=0;
for(i=n;i;i=i/10)
temp=temp*10+i%10;
return temp;
}
- 斐波拉契數列,以及由其引申的分數序列和;交錯序列的和;
- 函數——遞歸,n!和1+2+3+4+….+n ;
- if-else語句描述分段函數;
- 條件表達式,switch-case語句;
- 邏輯表達式,輸入scanf和輸出printf的相關輸出格式需要注意;
- 輾轉相除法求最大公約數,最小公倍數;
- 結構體的定義,輸入與輸出;
- 指針的定義,輸出與輸出,用函數實現兩個數的交換;
- 數組名做爲函數的形參的用法;
- 自定義函數,實現字符串的比較;
- 編譯預處理:帶參數的宏;
- 位運算:按位與,按位或,按位異或,按位取反,左移運算,右移運算;
- 新建鏈表,新增節點,刪除節點;
其他細節問題請大家自行復習。