功能:第一个for循环内,当i取奇数时,数组a中第i个数就为i的平方,否则, <2>
#include
char a[ 20 ] = ”TER” , b[ 20 ] = ”COMP” ; int i = 0 ;
strcat( a , b ) ;
while (a[ i ++ ] != ?\\0? ) b[ i ] = a[ i ] ; cout << b ;
数组a中第i个数为100-(i/2)*(i/2),此循环后输出为1001999962591498481,也就是最终输出的第一行。第二个for循环内,求的是数组a内各元素之和。输出为sum of a =635。第三个for循环内嵌套一个while循环,显得比较复杂,描述困难,输出为1009996918481492591。
}
解:输出CERCOMPP <3>
#include
int i = 0 , base , n , j , num[ 20 ] ; cin >> n >> base ; do{
i ++;
num[ i ] = n % base ; n = n / base ;
功能:程序读入字符数组a和b内的字符,并拼接,得到a字符数组内容为TERCOMP,在while循环内,第一次起条件便满足,由于i++为先引用后自增的关系,得到b数组第一个为C剩下的为拼接后a数组T后的字母,最后输出b为CERCOMP
}while ( n != 0 );
for ( j = i ; j >= 1 ; j--) cout << num[ j ] ; }
解:输入4,输出100。
功能:把十进制数转化为任意进制的数。
(2)编写程序实现下列问题的求解。
<1> 编程产生下列数组,并输出。 ⑴一维数组
1) (1 4 9 16 25 36 49 64 81 100) 2) (1 3 6 10 15 21 28 36 45 55) 3) (1 2 3 5 8 13 21 34 55 89) ⑵二维数组
1) 1 2 3 4 5 6 2) 1 2 3 .....n-1 0 2 3 4 5 6 0 2 3 4 ..... 0 1 3 4 5 6 0 1 3 4 5 ..... 1 2 4 5 6 0 1 2 ................ 5 6 0 1 2 3 n-1 0 1 .....n-3 n-2 6 0 1 2 3 4 0 1 2 .....n-2 n-1 3) 1 2 3 4 5 6 4) A B C D E F 2 1 2 3 4 5 B C E H L Q 3 2 1 2 3 4 C D F I M R 4 3 2 1 2 3 D E G J N S 5 4 3 2 1 2 E F H K O T 6 5 4 3 2 1
<2> 编程实现数组的排序:将有15个元素的整型数组按从小到大的次序排序。
<3> 编程求一组整数的最大公因子和最小公倍数。
<4> 随机输入一组数组元素值,利用题<2>使一个数组有序。然后随机输入一个数,用折半查找法在数组中查找,如在数组中,则输出元素在数组中的位置;如不在,则输出提示。 <5> 将两个字符串连接起来,不要用strcat。 解: <1>
(1)
1)#include
const int n=10; int main() {
int a[n]; for(int
i=0;i { int i=1,a[10]; a[0]=1; } for(i=0;i 2)#include for(i=1;i<10;i++) a[i]=a[i-1]+i+1; for(i=0;i<10;i++) cout< } 3)#include const int n=10; int main() { int a[n]; a[0]=1;a[1]=2; for(int i=2;i a[i]=a[i-1]+a[i-2]; cout<<\ (2) 1)#include const int n=6; int main() { int a[n][n]; for(int i=0;i for(int j=0;j for(i=0;i for(int j=0;j 2)#include int main() { int n; cout<<\输入n\ cin>>n; for(i=0;i cout< cout< } return 0; } int **a=new int*[n]; for(int i=0;i int[n]; for(i=0;i for(i=0;i cout< cout< } for(i=0;i 3)#include using namespace std; const int n=6; int main() { int a[n][n]; for(int i=0;i for(int j=0;j a[i][j]=abs(j-i)+1; 4)#include const int row=5; const int col=6; int main() { char a[row][col]; for(int i=0;i } sum+=add; a[i][j]='A'+i+sum; add++; for(i=0;i for(int j=0;j cout< } } } } for(i=0;i for(int j=0;j cout< cout< } return 0; } <2>#include const int n=15; int main() { int t,j; for(i=0;i t=a[i]; int a[n]; cout<<\输入15个整数\for(int i=0;i } return 0; } j=i-1; while(j>=0 && t j--; a[j+1]=t; cout<<\从小到大排序后\for(i=0;i <3>#include int p,q,k,p1,q1; cout<<\enter the number p q k=p%q; p=q; q=k; }while(k!=0); cout<<\最大公约数为\cout<<\最小公倍数为 please !\ cin>>p>>q; if(p <4>#include { } do { int temp; temp=p; p=q; q=temp; \ return 0; } p1=p;q1=q; const int n=10; int main() {