C语言,VB编程题
來源:互聯網 2012-01-26 12:27:25 評論
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
問題描述:
一道题目,请用C语言和VB编程(循环结构,*用空格代替):
********1
*******121
******12321
*****1234321
***************
**************
**1234567654321
*123456787654321
12345678987654321
參考答案:
C语言:
可以用一个简单的递归函数来控制每行的输出,可以自己设定起始和终止值:
#include
int main( ){
int begin,end,i,j,k;
printf("Begin value: ");
scanf("%d",&begin);
printf("End value: ");
scanf("%d",&end);
printf("\n");
for(i = begin,j = end; i <= end; ++i,--j){
for(k = 0; k < j; ++k)
printf(" ");
func(begin,i,begin - 1);
printf("\n");
}
}
void func(int begin,int end,int n){
printf("%d",begin);
if(begin < end)
func(begin + 1,end,n);
if(begin - 1 == n);
else
printf("%d",begin - 1);
}
VB:
把以下代码放入一个Command按钮中:
Private Sub Command1_Click()
Dim a, b, c, d As Integer
Dim e As String
e = "***"
For a = 1 To 9 Step 1
For d = 9 To a Step -1
Print e;
Next d
For b = 1 To a Step 1
Print b;
Next b
For c = a - 1 To 1 Step -1
Print c;
Next c
Next a
End Sub
赋给e的三个*号你自己在编译器中替换为3个空格,因为把代码粘上来百度只给显示一个空格。
[b]分类:[/b] 电脑/网络 >> 程序设计 >> 其他编程语言[br][b]问题描述:[/b][br]一道题目,请用C语言和VB编程(循环结构,*用空格代替):
********1
*******121
******12321
*****1234321
***************
**************
**1234567654321
*123456787654321
12345678987654321[br][b]参考答案:[/b][br]C语言:
可以用一个简单的递归函数来控制每行的输出,可以自己设定起始和终止值:
#include
int main( ){
int begin,end,i,j,k;
printf("Begin value: ");
scanf("%d",&begin);
printf("End value: ");
scanf("%d",&end);
printf("\n");
for(i = begin,j = end; i <= end; ++i,--j){
for(k = 0; k < j; ++k)
printf(" ");
func(begin,i,begin - 1);
printf("\n");
}
}
void func(int begin,int end,int n){
printf("%d",begin);
if(begin < end)
func(begin + 1,end,n);
if(begin - 1 == n);
else
printf("%d",begin - 1);
}
VB:
把以下代码放入一个Command按钮中:
Private Sub Command1_Click()
Dim a, b, c, d As Integer
Dim e As String
e = "***"
For a = 1 To 9 Step 1
For d = 9 To a Step -1
Print e;
Next d
For b = 1 To a Step 1
Print b;
Next b
For c = a - 1 To 1 Step -1
Print c;
Next c
Next a
End Sub
赋给e的三个*号你自己在编译器中替换为3个空格,因为把代码粘上来百度只给显示一个空格。