當前位置:首頁 » 編程語言 » c語言轉換成java
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言轉換成java

發布時間: 2022-05-05 19:11:36

① 把c語言代碼轉成Java代碼

package dis;
import java.io.*;
import java.math.*;
public class dis
{
public static void main(String [] s) throws Exception
{
Float a,b,c;
double x2;
double x1;
System.out.println("請輸入a, b, c的值");
BufferedReader bReader=new BufferedReader(new InputStreamReader(System.in));
a=Float.parseFloat(bReader.readLine());
b=Float.parseFloat(bReader.readLine());
c=Float.parseFloat(bReader.readLine());
if (b*b - 4*a*c <= 0)
System.out.println("輸入的系數不對,b2-4ac不大於0!程序退出!");
else
{
x1 = (-b + Math.sqrt(b*b - 4*a*c))/2*a;
x2 = (-b - Math.sqrt(b*b - 4*a*c))/2*a;

System.out.println("x1 = "+ x1);
System.out.println("x2 = "+x2);
}
return;
}

}

② c語言如何轉化為java 語言

public class Test{
public staitc void main(String args){
int i,j,k=3;
for(i=0;i<4;k=k-1-i,i++)
{
for(j=0;j<4+i;j++)
{
if(j<k)
System.out.print(" ");
else
{
System.out.print("*");
j++;
}
}
}
k=3;
}
}

保存為Test.java,然後運行javac Test.java和java Test就可以運行了。。

③ 如何將下面c語言代碼轉換成Java代碼

完整的直譯為java方法是這樣的,但是這樣寫dataLen的值必須小於等於數組長度,不然會出現下標越界的異常

public int accumulativeVerification(int[] data, int dataLen) {
    int sum = 0;
    for (int i = 0; i < dataLen; i++) {
        sum += data[i];
    }
    return sum;
}

如果是意譯(計算int數組的所有數之和),那麼java可以這樣寫

public int accumulativeVerification(int[] data) {
    int sum = 0;
    for (int i = 0; i < data.length; i++) {
        sum += data[i];
    }
    return sum;
}

④ 怎樣把一下的C語言程序改成java程序

修改成Java後的代碼:

publicclassDemo{
publicstaticintgcd(inta,intb,intc){
intmin,i;
if(a>b){
if(b>c){
min=c;
}else{
min=b;
}
}else{
if(a>c){
min=c;
}else{
min=a;
}
}
if(b>c){
if(c>a){
min=a;
}else{
min=c;
}
}else{
if(b>a){
min=a;
}else{
min=b;
}
}
if(a>c){
if(c>b){
min=b;
}else{
min=c;
}
}else{
if(a>b){
min=b;
}else{
min=a;
}
}
for(i=min;i>=1;i--){
if(a%i==0&&b%i==0&&c%i==0){
break;
}
}
returni;
}

publicstaticvoidmain(String[]args){
inta=1,b=0,c=0,i,k=0,j=0,m=0,n=0,z,y;
while(a<9){
b=1;
while(b<9){
c=1;
while(c<9){
if(gcd(a,b,c)==1){
System.out.println(a+";"+b+";"+c);
k++;
z=b*b-4*a*c;
if(z==0){
j++;
}elseif(z>0){
m++;
for(y=1;y<z/2;y++){
if(y*y==z){
System.out.println("解答是有理數。");
}
}
}else{
n++;
}
}
c++;
}
b++;
}
a++;
}
System.out.println("N="+k);
System.out.println("N2="+j);
System.out.println("N3="+m);
System.out.println("N4="+n);
i=gcd(a,b,c);
}
}

⑤ c語言轉化為JAVA~~弄好追加200分!!!!

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Student {

String name;

int score;

public String getName() {
return name;
}

public void setName(String anameme) {
this.name = anameme;
}

public int getScore() {
return score;
}

public void setScore(int score) {
this.score = score;
}

public static void main(String[] args) {
Student student[] = new Student[30];
System.out.println("請輸入學生的成績:");
for (int i = 0; i < student.length; i++) {
System.out.println("請輸入姓名:");
//接收鍵盤的輸入
BufferedReader cin = new BufferedReader(new InputStreamReader(
System.in));
try {
student[i].setName(cin.readLine());
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("請輸入成績:");
try {
//這里也是接收但是因為接收上來的是字元串所以要轉換成 int類型
//Integer.parseInt(cin.readLine())
student[i].setScore(Integer.parseInt(cin.readLine()));
} catch (IOException e) {
e.printStackTrace();
}
}
//按照你的要求做的邏輯處理
int num = 1;
Student temp = new Student();
for (int i = 0; i < student.length; i++) {
int max = i;
for (int j = i + 1; j < student.length; j++) {
if (student[j].getScore() > student[max].getScore()) {
max = j;
if (max != i) {
temp = student[max];
student[max] = student[i];
student[i] = temp;
}
if ((i > 0)
&& (student[i].getScore() < student[i - 1]
.getScore())) {
System.out.println(num + " " + student[i].getName()
+ student[i].getScore());
num++;
}
}

}
}
}
}
希望是你想要的也希望能幫到你
祝你成功

⑥ 怎麼把c語言里的數據類型轉換成java的數據類型

樓主你好,
java數據類型有8種數據類型
分別是布爾、short、int、long、浮點型、雙精度型、字元型、位元組型、
在java中存在的數據類型轉換只有兩種,
一種是有高到低的自動轉換,
另一種是由低到高的強制類型轉換。
數據類型由低到高依次是:
byte--->char---->short ---->int----->long---->float---->double
不能與C語言中的類型進行轉換.

⑦ 一段C語言程序轉換為java的寫法謝謝!

按照你的要求,C語言程序轉換成的Java程序如下:

publicclassGGG{

(Stringinput_str){

Stringstr_buff_8="",str_buff_10="",str_return="";

longsum8_1=0,sum8_2=0,sum10_1=0,sum10_2=0;//分別存儲八進制和十進制不同演算法取值的合計for(inti=0;i<input_str.length();i++){//對輸入字元串的每一個位元組進行循環

str_buff_8+=Integer.toOctalString(input_str.charAt(i));//將ASCII碼值轉換成八進制字元串

str_buff_10+=Integer.toString(input_str.charAt(i));//將ASCII碼值轉換成十進制字元串

}

for(inti=1;i<=str_buff_8.length();i++){

sum8_1+=(str_buff_8.charAt(i-1)-'0')*i;

sum8_2+=(str_buff_8.charAt(str_buff_8.length()-i)-'0')*i;

}

for(inti=1;i<=str_buff_10.length();i++){

sum10_1+=(str_buff_10.charAt(i-1)-'0')*i;

sum10_2+=(str_buff_10.charAt(str_buff_10.length()-i)-'0')*i;

}

str_return=""+sum8_1%10+sum8_2%10+sum10_1%10+sum10_2%10;

returnstr_return;

}

publicstaticvoidmain(String[]args){

System.out.println(calculateBillMac("abcdef"));

}

}

運行結果:

2739

這個數據和C語言用字元串"abcdef"測試的結果相同.

⑧ C語言代碼轉換成java GUI窗體

使用詞法分析可以簡單的進行轉換,不過問題是介面,java使用的庫類和函數,c並不一定擁有,而且java運行的方式不同(java可以說是解釋器的腳本,而c最終變成指令集),並不是簡單給出一個函數調用位置就可以解決的,目前的話可以實現個轉化器(如果你學過編譯原理),但前提是不使用介面,或許我們可以像編譯器對string類型的支持那樣實現所有java的庫操作,但這顯然是雞肋,因為這種方法寫的java程序轉換後是很難移植的(顯然我是說硬體廠商不會為你天真的想法提供介面),並且對c風格來說是一種極大的破壞,最後生成的代碼既沒有效率也沒有可移植性和可讀性
結論是你還不如自己實現一個,即使你要轉化一個大游戲,這樣也有效多了

⑨ C語言轉換JAVA

第一題:
public class Test1 {
public static void main(String args[]){
int a, b, c;
for(a = 123; a <= 987; a++){
for(b = 123; b <= 987; b++){
c = a+b;
if(c <= 987 && a<b && Check(a,b,c)){
System.out.println(a +" + "+b+" = "+c);
}
}
}
}

public static boolean Check(int a, int b, int c) {
int num[] =new int[9];
int i, j;
int temp = 0; //沒用到
int n = a*1000000+b*1000+c;
for(i=0;i<9;i++)
{
num[9-1-i] = n%10;
if(num[9-1-i] == 0)
return false;
n /= 10;
}
for(i=0;i<8;i++)
for( j=i+1;j<9;j++)
if(num[i]==num[j])
return false;

return true;

}
}
第二題
public class Test2 {
public static void main(String args[]){
//數組為引用類型
int a[]= new int[]{34,42,1,75,56,27,18,84,91,63};
int i;
System.out.println("排序前:");
for (i=0; i<10; i++)
{
System.out.print(a[i]+"\t");
}
System.out.println();
mergesort(a,0,9);
System.out.println("排序後:");
for (i=0; i<10; i++)
{
System.out.print(a[i] +"\t");
}
System.out.println();
}

public static void mergesort(int[] a, int left, int right) {
int middle;
if(left < right){
middle=(left+right)/2;

mergesort(a,left,middle);

mergesort(a,middle+1,right);

merge(a,left,middle,right);
}
}
public static void merge(int a[], int left, int middle, int right){
int n1 = middle - left +1;
int n2 = right - middle;
int[] L = new int[n1 + 1];
int[] R = new int[n2 +1];
int i, k, j = 0;

for(i = 0; i < n1; i++){
L[i] = a[left+i];
}

L[n1] = 100;
for(i = 0; i < n2; i++){
R[i] = a[middle+i+1];
}
R[n2] = 100;
i = 0;
for (k=left; k<=right; k++)
{
if(L[i]<=R[j])
{
a[k]=L[i];
i++;
}
else
{
a[k]=R[j];
j++;
}
}
//Java垃圾回收器自動清理內存
}
}
//運行結果
/*排序前:
34 42 1 75 56 27 18 84 91 63
排序後:
1 18 27 34 42 56 63 75 84 91 */
第三題
public class Test3 {
public static void main(String args[]){
int arry[] = new int[]{67,24,18,3,55};
int i;
quiksort(arry, 0, 3);//注意此處不是4
for(i=0;i<5;i++)
{
System.out.print(arry[i]+"\t");
}
System.out.println();
}

public static void quiksort(int a[], int low, int high){
int i = low;
int j = high;
int temp = a[i];
if( low < high)
{
while(i < j)
{
while((a[j] >= temp) && (i < j))
{
j--;
}
a[i] = a[j];
while((a[i] <= temp) && (i < j))
{
i++;
}
a[j]= a[i];
}
a[i] = temp;
quiksort(a, low, i-1);
quiksort(a, j+1, high);
}else{
return ;
}

}
}
//運行結果為:
//3 18 24 67 55
謝謝*-*

⑩ 把C語言程序轉換成Java

package dis;
import java.io.*;
import java.math.*;
public class dis
{
public static void main(String [] s) throws Exception
{
Float a,b,c;
double x2;
double x1;
System.out.println("請輸入a, b, c的值");
BufferedReader bReader=new BufferedReader(new InputStreamReader(System.in));
a=Float.parseFloat(bReader.readLine());
b=Float.parseFloat(bReader.readLine());
c=Float.parseFloat(bReader.readLine());
if (b*b - 4*a*c <= 0)
System.out.println("輸入的系數不對,b2-4ac不大於0!程序退出!");
else
{
x1 = (-b + Math.sqrt(b*b - 4*a*c))/2*a;
x2 = (-b - Math.sqrt(b*b - 4*a*c))/2*a;

System.out.println("x1 = "+ x1);
System.out.println("x2 = "+x2);
}
return;
}

}