[怎样用C语言的循环语句打印出下列的图形]用C语言的循环语句实现: #include<stdio.h> int main() { int i,j; for(i=1;i<=4;i++) {for(j=1;j<=i;j++) putchar('*'); putchar('n'); } return 0; }...+阅读
abcd都要用上?长度为4?
如果是这样,那代码如下,其中心思想就是递归
import java.util.ArrayList;
import java.util.List;
public class Permutation {
private char initial;
private char last;
List<Character> chars=new ArrayList<Character>();
public static void main(String[] args) {
new Permutation('a','d').start();
}
public Permutation(char initial,char last) {
this.initial=initial;
this.last=last;
for (char c = this.initial; c <= this.last; c++) {
chars.add(c);
}
}
public void start(){
next(chars,new ArrayList<Character>());
}
private void next(List<Character> unused,List<Character> used){
if(unused.isEmpty()){
System.out.println(used);
}else{
for(int i=0;i<unused.size();i++){
List<Character> cur=new ArrayList<Character>(unused);
List<Character> curUsed=new ArrayList<Character>(used);
curUsed.add(cur.remove(i));
next(cur,curUsed);
}
}
}
}
如果你想长度不固定,就是会出现abc,dc,c这样的
只需修改next函数
private void next(List<Character> unused,List<Character> used){
if(!unused.isEmpty()){
for(int i=0;i<unused.size();i++){
List<Character> cur=new ArrayList<Character>(unused);
List<Character> curUsed=new ArrayList<Character>(used);
curUsed.add(cur.remove(i));
System.out.println(curUsed);
next(cur,curUsed);
}
}
}
没有仔细验证,有什么问题可以交流 ,格式我没有改,你可以自己做个输出函数去遍历输出List即可
以下为关联文档:
用java语言绘制三角函数图像package com.graphics; import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class Test extends JFrame {...
c语言里用递归实现链表反向打印打开NewContactList工程文件, 相关的修改的程序文件如下(未修改的没有post 上去)。 ContactList.h文件如下: /* *ContactList.h * * created on Jul 6, 2014 * Author: *** * *...
求C语言的笔试题和编程题!谢谢 !一份曾经的考卷+答案~~//后面的编程题是以前做过的实验~~《程序设计基础-C》试卷 一、单项选择题1. C 语言程序中可以对程序进行注释,注释部分必须用符号_____括起来。 A、‘...
C语言怎样打印出当前的时间可以使用头文件time.h 下面我举一个例子: /*不能直接复制!*/ #include <stdio.h> #include <time.h> int main() { time_t t; //time_t是一种类型,定义time_t类型的t time(&t);...
c语言提供一个打印出当前的系统时间以20110110的形式只需要#include <stdio.h> #include <windows.h> typedef struct date { int da_year;//年 int da_day;//日 int da_mon;// 月 }; void gettime(struct date *dateblk) { SYSTEMTIME...
用C语言编程打印杨辉三角int n,a[100][100]={0},i,j; scanf("%d",&n); for(i=0;i<n;i++) {for(j=0;j<=i;j++) {if(j==0||i==0) a[i][j]=1; else a[i][j]=a[i-1][j]+a[i-1][j-1]; if(a[i][j]) printf("%...
用c语言打印杨辉三角#include<stdio.h> int main() { int zhu[10][10]; int x,y; for(x=0;x<10;x++) { for(y=0;y<10;y++) zhu[x][y]=0; zhu[x][0]=1; } for(x=0;x<10;j++) { for(y=0;y<10;y++)...
用java语言绘制正弦曲线很简单,程序写给你,给分: --------------------------------------------- import java.awt.*; import javax.swing.JFrame; import java.util.Random; import java.text.Decim...
C语言用递归函数打印 a a b a b c a b c d a b c d e a b c d e f a b c d e#include #include void print(int num) { int i; if (num == 1) { printf("a "); return; } print(num - 1); for (i = 0; i printf("%c ", 'a' + i); } void main() { print(6...